Pub-Sub消息传递系统,用于双向通信

时间:2018-09-04 12:40:06

标签: apache-kafka rabbitmq message-queue publish-subscribe

Pub-Sub Messaging System Overview 嗨,我有该系统在图像中捕获。我打算采用一种可靠的消息传递系统,但是对于使用哪个消息传递系统我感到有些困惑。下面说明了数据的详细流程和我的要求。

Step 1: data from System is given to Publisher. 
Step 2: Publisher simply pushes the data to the Topic based Messaging 
        system.
Step 3: There will be  more than one subscribers for each topic and
        subscribers should get notified as soon there are some entries in
        messaging system. 
Step 4: Subscribers process the data and update the status back to messaging 
        system. 
Step 5: Publisher should get notified for the processed messages and 
        acknowledge the System which gave the data.

所以,我的问题是我可以将RabbitMq或Kafka用于“基于主题的消息传递系统”吗?我在这里的主要要求是从订户处更新状态,发布者也应获得有关状态更新的通知。 (在这个时间点上,我对吞吐量,性能和可伸缩性没有太多的困扰)。我还要担心的另一个问题是数据恢复/高可用性。

1 个答案:

答案 0 :(得分:0)

有一个N + 1主题系统,一个用于发布将由N个订阅者使用的消息,另一个N个主题用于确认,每个订阅者一个。 您的“系统”可以订阅所有这N个确认主题,并且可以验证是否所有订阅者都处理了由生产者发布的原始消息。 Kafka中的每条消息,例如。具有消息密钥,并且相同的消息密钥可用于将原始消息与其特定于用户的确认相关联。

这是否可以实现您在系统中想要的?