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 に答える