私は zeromq の初心者です。最近、zeromq の pub/sub でいくつかのテストを行いましたが、ZeroMQ で XPUB と XSUB を使用してプロキシを使用して Pub-Sub ネットワークを実装する方法がわかりません。よろしくお願いします。
2726 次
2 に答える
2
例を通して基本を学びます。プロキシの場合は、これを使用してください。これはmsgqueue.cppからのものです。
int main (int argc, char *argv[])
{
zmq::context_t context(1);
zmq::socket_t frontend (context, ZMQ_XSUB);
frontend.bind("tcp://*:5559");
zmq::socket_t backend (context, ZMQ_XPUB);
zmq_bind (backend, "tcp://*:5560");
zmq_proxy (frontend, backend, NULL);
return 0;
}
于 2013-09-02T14:12:35.947 に答える
-1
プロキシー:
int main (int argc, char *argv[])
{
zmq::context_t context(1);
zmq::socket_t frontend (context, ZMQ_XSUB);
....//set hwm
frontend.bind("tcp://*:5559");
zmq::socket_t backend (context, ZMQ_XPUB);
....//set hwm
zmq_bind (backend, "tcp://*:5560");
zmq_proxy (frontend, backend, NULL);
return 0;
}
メッセージを失った理由は、バインドまたは接続する前に setsockopt を呼び出す必要があったためです。
setsockopt については、0MQ API ドキュメントを参照してください。
注意: ZMQ_SUBSCRIBE、ZMQ_UNSUBSCRIBE、および ZMQ_LINGER を除くすべてのオプションは、後続のソケットのバインド/接続に対してのみ有効です。
于 2013-09-13T07:07:07.733 に答える