我只是做了一个快速测试,似乎使用bus.Publish的已发布消息在拥有订阅者之前不会一直存在于msmq中。
谢谢
这就是发布/订阅与MSMQ一起工作的方式-发布者发布消息时,它将在其订阅存储中查找订阅者的队列名称,并将消息的副本发送给每个订阅者。
由此可见,如果没有订阅者,那么实际上就不会发送任何消息。
从逻辑上讲,当使用支持多播的传输(例如RabbitMQ)和RabbitMQ时,它的工作方式相同,然后消息将发布到代理,代理然后将消息的副本分发给每个订户-如果没有,则再次发送消息,该消息将不会传递给任何人,因此无法在任何地方看到。
我希望这是有道理的 :)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句