RabbitMQ之消息持久化

IT知识
497
0
0
2022-05-12
标签   RabbitMQ

RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在可靠性、易用性、扩展性、高可用性等方面表现不俗;消息的可靠性是RabbitMQ的一大特色,为了保证RabbitMQ在退出或者crash等异常情况下数据没有丢失,需要将queuemessageexchange都持久化。

RabbitMQ之消息持久化

rabbitmq

queue的持久化

queue的持久化是通过durable=true来实现的,如下图所示的C#代码,第二个参数设置为true,即durable=true,服务会把持久化的queue存放在硬盘上。

RabbitMQ之消息持久化

创建队列

消息的持久化

消息的持久化是这里的DeliveryMode=1代表不持久化,DeliveryMode=2代表持久化,如下图C#代码:

RabbitMQ之消息持久化

发送消息

exchange的持久化

exchange的持久化是通过durable=true来实现的,如下图所示的C#代码,第三个参数设置为true,即durable=true

RabbitMQ之消息持久化

创建交换器

通过以上三个地方就实现了queue, message,exchange的持久化设置了,希望对您有帮助,同时有疑问也欢迎各位留言讨论,感谢您的浏览!