我正在实现一个消息传递系统,其中称为代理的外部程序能够通过ZeroMq生产者进行通信。因此,每次感兴趣的事件发生时,代理都会向ZeroMq发送消息。
我有兴趣使用管道模式来实现它。
我找到了一些示例(Ventilator-Worker-Results Manager),但Ventilator组件创建了一个端点,用于接受来自worker的连接,然后批量发送所有消息。
我的情景完全不同。每次需要发送事件时,“代理”都会连接 - 它不会等待来自工作人员的连接,所以我想知道这是否可能?此外,重要的事实是必须按照发送的顺序处理消息。
答案 0 :(得分:2)
你应该混合模式来实现你的解决方案。我认为它应该是specialized broker,它为真正的REQ代理实例化REP 代理收集器。那些代理收集器应该在与系统通信之前处理订购。
答案 1 :(得分:1)
REQ-REP是您想要往返的时间。听起来你想要一个PUB-SUB。在知名端口设置带有绑定的SUB,然后让客户端连接到该端口并发出PUB。