3

我正在使用 ZMQ PUB 套接字来分发有关不同主题的新闻。但是其中一些消息的计算成本很高。有没有办法让 on_subscribe 回调,所以我可以只计算实际需要什么?

4

4 回答 4

2

只是为了记录我找到的解决方案

我可以创建一个 XPUB 套接字并侦听该套接字上的传入消息。订阅将生成一条以 b'\x01' 开头的消息,后跟主题。当客户端取消订阅时,消息将是 b'\x00' 后跟主题。

于 2012-11-02T19:27:06.673 回答
1

XPUB 和 XSUB 套接字的行为记录在zmq_socket 手册页中。

指南中还有一个示例,它使用这样的 XPUB 来进行最后一个值缓存

于 2012-11-10T05:20:18.413 回答
0

创建 on_subscribe 回调的方式是在发布者和任何连接的订阅者之间建立另一个 req/rep 连接。订阅者会将它想要的消息发送给发布者,让发布者知道它应该为发布准备哪些消息。这样,只有感兴趣的消息将通过 PUB/SUB 连接发布。它是一种“注册”您想要的消息,而不是爆破所有消息。

于 2012-11-02T18:01:45.917 回答
0

在 zmq 2.x 中,订阅不会发送给发布者。zmq 3.x 有订阅转发,但是发布者站点没有这样的回调。

于 2012-10-28T09:16:02.813 回答