ZMQ:路由器如何识别经销商

Yve*_*ves 3 zeromq

我正在使用 ZMQ 模式经销商/路由器。
在我的项目中,路由器是代理管理器,经销商是代理。

所以我有很多经销商而只有一台路由器。

每个经销商都可以向路由器发送自己的请求并等待回复。
路由器侦听一个端口,因此它必须能够识别路由器。

我知道我们可以zmq_setsockopt为经销商提供一个唯一的 ID。如果经销商向路由器发送请求,路由器将收到其唯一的 ID 及其请求。

想象一下,路由器已经收到来自 10 个经销商的 10 个请求。现在路由器想要向第五个经销商发送回复。怎么做?

Jas*_*son 5

你所说的有一点修改...

[...]如果经销商向路由器发送请求,路由器将收到其唯一的 ID 及其请求。

(强调已添加)

现实情况是,如果您没有明确设置身份,经销商会自动选择自己的身份。它仍然会在消息的第一帧中将该身份发送到 ROUTER 套接字,并且您仍然可以使用它来将消息发送回该经销商,您只需在消息进入时对其进行跟踪即可。

您可以在指南中详细了解其工作原理。我建议您阅读全文,至少从头到尾阅读第 5 章,但链接部分介绍了如何使用 ROUTER 套接字进行通信。

您没有指定语言,但这里有许多来自不同语言的示例来说明如何使用它。