Gra*_*ter 5 c# rabbitmq docker
我使用这个命令行新的 RabbitMQ 容器
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq --hostname rabbitmq rabbitmq:management
Run Code Online (Sandbox Code Playgroud)
代码设置durable:true,则重启容器队列存在,消息消失
channel.QueueDeclare(
queue: name,
durable: true,
exclusive: false,
autoDelete: false,
arguments: null
);
Run Code Online (Sandbox Code Playgroud)
请问什么问题?谢谢
来自官方文档:
当 RabbitMQ 退出或崩溃时,它会忘记队列和消息,除非您告诉它不要这样做。要确保消息不丢失,需要做两件事:我们需要将队列和消息标记为持久的。
所以你需要这样的东西:
var properties = channel.CreateBasicProperties();
properties.Persistent = true;
channel.BasicPublish(exchange: "",
routingKey: "task_queue",
basicProperties: properties,
body: body);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2273 次 |
| 最近记录: |