我正在使用ZMQ PUB套接字来分发不同主题的新闻。但是其中一些消息的计算成本很高。有没有办法让on_subscribe回调,所以我只能计算实际需要的是什么?
答案 0 :(得分:2)
仅记录我找到的解决方案
我可以创建一个XPUB套接字并侦听该套接字上的传入消息。订阅将生成以b'\ x01'开头的消息,后跟主题。当客户取消订阅时,该消息将为b'\ x00',后跟主题。
答案 1 :(得分:1)
XPUB和XSUB套接字的行为记录在the zmq_socket man page。
中“指南”中还有一个示例,它使用XPUB这样做last value caching。
答案 2 :(得分:0)
在zmq 2.x中,订阅不会发送给发布者。 zmq 3.x具有订阅转发功能,但发布者站点没有此类回调。
答案 3 :(得分:0)
创建on_subscribe回调的方法是在发布者和任何连接订阅者之间设置另一个req / rep连接。订阅者将向发布者发送它想要的消息,以便让它知道应该为发布准备哪些消息。这样,只有感兴趣的消息将通过PUB / SUB连接发布。它是一种“注册”你想要的消息,而不是爆炸所有消息。