【问题标题】:ZeroMQ: link to message relationZeroMQ:链接到消息关系
【发布时间】:2021-04-19 21:50:25
【问题描述】:

我正在使用 ZMQ 的 Pub-Sub-Pattern。而且我知道可以将订阅者连接到任意数量的发布者,以便使用 ZMQ recv 函数通过一个套接字接收所有发布者消息。但是,我还需要通过哪个“链接”(例如 ipc:///tmp/link.ipc)收到当前收到的消息的信息。

有没有办法从 ZMQ 消息中查询到这些信息?

为了帮助理解我的意思,这里有一个小例子:

#include <zmq.hpp>
int main()
{
    zmq::context_t ctx(1);
    zmq::socket_t skt(ctx, ZMQ_SUB);
    skt.setsockopt(ZMQ_SUBSCRIBE, nullptr, 0);
    skt.connect("ipc:///tmp/link0.ipc");
    skt.connect("ipc:///tmp/link1.ipc");
    skt.connect("ipc:///tmp/link1.ipc");
    zmq::message_t msg;
    while (1)
    {
        if (skt.recv(msg))
        {
            // from which link is the message?
        }
    }
}

【问题讨论】:

    标签: c++ zeromq


    【解决方案1】:

    无法从 zmq 框架中查询该信息。如果地址太长,另一种选择是使用包含 IP 地址或 ID 的“部分”发布多部分消息。

    【讨论】:

      猜你喜欢
      • 2014-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-20
      • 2017-05-06
      • 2014-05-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多