RabbitMQ代理关闭时,大众运输发布消息

时间:2020-08-28 01:39:52

标签: rabbitmq masstransit

我正在使用配置有Asp.net core 2.2 API项目的MassTransit 6.3.2将消息发布到RabbitMQ。在论坛上的任何地方,我都读到,当RabbitMQ代理关闭时,Masstransit将抛出错误并释放发布消息。只是为了检查这种情况实际上是如何工作的,我以相同的顺序完成了以下步骤,但是结果很奇怪,我没有松开消息,并且消费者在启动经纪人后得到了消息。

能否让我知道这里发生了什么?当代理关闭时,Masstransit是否将消息存储在本地,当代理联机时,该消息是否发布?我没有配置任何发件箱。

  1. RabbitMQ正在运行,使用者正在运行。
  2. 停止RabbitMQ服务,并通过asp.net核心api发布消息。
  3. 一段时间后调用方得到任务取消错误(调用方意味着另一个测试控制台正在调用api)
  4. 等待2分钟后,我启动了RabbitMQ服务。
  5. 消费者服务收到消息并成功处理。

使用#5,证明了当代理在线时,消费者能够恢复并重新连接。消费者正在使用Masstransit 7.0.0

我也看到在论坛上,当消息代理关闭时,人们收到了“代理已关闭”的日志消息,但我没有得到该消息。我在所有项目中都使用了Serilog结构化日志记录。 我需要启用任何日志设置才能从Masstransit获取日志消息吗?

感谢您的宝贵时间。

0 个答案:

没有答案