在Windows上,我必须在ZeroMQ中构建一个相对简单的拓扑。
我有一个进程(让我们称之为桥接)从外部接收数据并在ZeroMQ拓扑中引入它们。我想使用一组发布商(类似ipc:///bridge/entity1
,ipc:///bridge/entity2
,ipc:///bridge/entity3
等等)但是afaik,ZeroMQ不支持Windows上的IPC传输(由于缺乏这种操作系统中的命名管道。
所以我要转移到TCP传输,但我不想为每个实体使用一个端口:我想使用tcp:///bridge:12345/entity1
,tcp:///bridge:12345/entity2
之类的东西等等
然而AFAIK,this is not possible with ZeroMQ。
你能指点我正确的方向吗?
答案 0 :(得分:1)
没错,将几个ZeroMQ套接字绑定到单个端口是不可能的。
可能您的问题可能通过单个PUB套接字解决,该套接字将消息发布到不同的主题,以及与zmq_setsockopt(ZMQ_SUBSCRIBE, ...)
连接的订阅者。由于ZeroMQ 3.x主题过滤是在PUB端完成的,因此不会有冗余数据传输(相关问题:ZeroMQ filtering at publisher)