与ZeroMQ的和声模式的心跳

时间:2014-07-07 10:04:57

标签: zeromq

我读过一篇关于ZeroMQ的和谐模式的好文章

此处仅供参考http://randalh.blogspot.ie/2012/12/zeromq-true-peer-connectivity-harmony.html

建议使用DEALER套接字输出数据,使用ROUTER输入。

我正在考虑使用这种模式,但在实现这一模式之前,有一点我不太清楚。这是正确的心跳方式。

假设我是通过经销商进行的。如果经销商认为没有其他任何一方连接(通过它正在做的任何内部检查),我的ping消息卡住,如果我正确理解语义,发送应该阻止。我是否应该尝试切换到非阻塞模式而不重新发送ping,除非其中一个已经挂起?

如果我应该通过ROUTER进行,那么如何通过我的DEALER连接控制连接?

P.S。此外,我感觉我正在重新实现ZeroMQ已有的东西,例如一些连通性检查。我可以重复使用吗?

1 个答案:

答案 0 :(得分:0)

Heartbeating让您的应用程序知道连接是否成功,因为ZMQ了解哪些套接字是否连接是不可靠的(因此,甚至不可用)。

至于如何做,这取决于你的具体情况。一般来说,如果因为对等体断开连接而导致排队等待并不重要,所以我会说继续发送它们。无论您使用阻止还是非阻止,都取决于您的应用和语言。但是你可能想要从双方心跳,只要你控制双方,所以从经销商和路由者那里ping。