我们使用 Rebus 和 MSMQ 在应用程序组件之间进行基于消息的通信。这些组件都在同一台机器上运行。
发送和接收消息之间的时间通常保持在一秒以下。但是,如果系统空闲一分钟左右(意味着没有发送任何消息),则接下来的一两条消息有时需要大约五秒钟的时间才能传送。MSMQ 性能计数器显示这些消息在此期间保留在队列中。
对于我们的应用程序来说,希望消息具有恒定的传递时间(低于一秒)。
这种行为的原因可能是什么?有没有办法影响 MSMQ 或 Rebus 中消息的传递时间?我们是否应该选择其他运输类型以获得更稳定的交货时间?
rebus ×1