ØMQN-to-M消息队列

时间:2014-01-17 09:41:27

标签: zeromq

我正在考虑如果我们可以用ØMQ替换我们的消息队列中间件的可行性。

我有两套服务器。 第一组服务器,它们不与同一组中的另一台服务器通信,它们只将请求附加到特定的消息队列中。

第二组服务器,它们不与同一组中的另一台服务器通信,它们只接收来自特定消息队列的请求来处理请求。

它看起来像是生产者 - 消费者模型。

我认为它可以被ØMQ的自由模式http://zguide.zeromq.org/page:all#Brokerless-Reliability-Freelance-Pattern取代。

但问题是:

如何支持服务器和服务器的动态发现;客户端?

2 个答案:

答案 0 :(得分:0)

  

如何支持服务器和服务器的动态发现;客户端?

可能有一百种方法可以实现,并且很大程度上取决于您的情况。如果所有服务器始终位于同一LAN上,则可以使用本地网络上的广播地址进行引导,并向所有响应者询问他们是谁。又快又脏。

我个人会实现一个每个人都知道的引导服务。他们都可以询问这种始终可用的服务,以了解他们所服务的服务器类型的“在线”。

答案 1 :(得分:0)

另一种选择,你也可以使用pub-sub。这需要一个中央出版商。新连接的节点将通知发布者,该发布者将通知所有其他节点新的连接,可能包括新节点ID,ip:端口(如果需要)等。如果发布者崩溃​​,所有节点仍然能够进行通信,因为它仅使用对于全局通知,可以使用备份发布者使系统处于故障安全状态。每个节点还可以向发布者发送心跳,发布者在节点离开/崩溃时通知所有其他节点。