【发布时间】:2015-08-26 21:32:21
【问题描述】:
我正在尝试在 ZeroMQ 中实现基本的 DEALER - ROUTER 套接字。 我的问题有多个部分。
在此之前,这是我的示例脚本
问题 -
首先,我的原版 DEALER SCRIPT 无法读取来自 SOCKET 的消息。
其次,当我实施 DEALER 或 ROUTER PATTERN 时,是否必须传递 IDENTITY(作为标头的一部分),即不能在没有任何 IDENTITY 的情况下发送消息。
换句话说,DEALER - ROUTER 模式(如下所示)可以共存并在它们之间传递消息,而无需在标头中发送身份信息。
因为,如果没有身份,我也无法让它工作。
注意 : - 图片中的 Zeromq ruby 库(ruby 客户端)是ffi-rzmq
【问题讨论】:
-
如果没有明确设置身份,ZMQ会设置身份。无需在dealer端设置,但需要在路由器端使用才能发回消息。
-
现在我仔细查看了您的代码 - 如果您希望路由器能够发送消息,路由器 必须 接收来自经销商的消息以了解其身份没有明确设置身份。
-
@Jason 已接受。因此,如果我在从 ROUTER 发送消息时传递了 DEALER 的 IDENTITY,则可以通过 here 看到。你能解释一下为什么在这种情况下没有交换消息的原因吗?