RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在可靠性、易用性、扩展性、高可用性等方面表现不俗;消息的可靠性是RabbitMQ的一大特色,为了保证RabbitMQ在退出或者crash等异常情况下数据没有丢失,需要将queue,message和exchange都持久化。
rabbitmq
queue的持久化
queue的持久化是通过durable=true来实现的,如下图所示的C#代码,第二个参数设置为true,即durable=true,服务会把持久化的queue存放在硬盘上。
创建队列
消息的持久化
消息的持久化是这里的DeliveryMode=1代表不持久化,DeliveryMode=2代表持久化,如下图C#代码:
发送消息
exchange的持久化
exchange的持久化是通过durable=true来实现的,如下图所示的C#代码,第三个参数设置为true,即durable=true
创建交换器
通过以上三个地方就实现了queue, message,exchange的持久化设置了,希望对您有帮助,同时有疑问也欢迎各位留言讨论,感谢您的浏览!