可靠的发布/订阅

本文关键字:订阅 | 更新日期: 2023-09-27 18:20:45

是否有任何方法可以设置一个发布/订阅系统(1个发布者,0..*个订阅者),保证每个订阅者只接收一次每条消息,并且按照与发送消息相同的顺序发送?大多数总线系统(例如NServiceBus)不会保证这一点。

我不在乎是否必须自己实现系统,但至少事务异步通信(例如队列或类似的通信)应该能够做到这一点。

有什么提示/建议吗?

可靠的发布/订阅

根据我(有限)的经验,你可以用RabbitMQ来实现这一点:

  • https://www.rabbitmq.com

具体来说,我推荐他们的pubslish/subscriber教程:

  • https://www.rabbitmq.com/tutorials/tutorial-three-python.html

请注意,特定的教程不涉及确认的概念,这将是确保消息传递给消费者的下一步。

至于消息排序,它也可能是可以实现的,这取决于您的用例,如本文所述:

  • RabbitMQ-消息传递顺序

希望能有所帮助。