2013-03-03 7 views
9

JZMQ(Javaバインドのzmq)ソケットが接続されているかどうかを確認する方法はありますか?JZMQソケットが接続されているかどうかを確認する方法

ZContext zmqContext = new ZContext(); 
ZMQ.Socket workerSocket = zmqContext.createSocket(ZMQ.DEALER); 
workerSocket.setIdentity("ID".getBytes()); 
workerSocket.connect("tcp://localhost:5556"); 

上記のコードの後、workerSocketが接続されているかどうかを確認したいと思います。接続状況を確認するといいでしょう。

答えて

10

いいえ、ソケットに接続されているかどうかを確認する方法はありません。

ZeroMqはネットワークを抽象化します。クライアントとサーバの接続は、接続を確立するピアに対して完全に透過的です。クライアントまたはサーバが、存在しないピアにメッセージを送信することがあります。エラーは発生しません。代わりに、HWM設定に基づいてソケットバッファにキューイングされます。

ピアのアベイラビリティをチェックするには、同期要求/応答ハートビートをタイムアウトファクタで手動で使用します。ここに例がある、それが助けてくれることを願う!

リクエスト/返信用のサンプルをチェック! https://github.com/imatix/zguide/tree/master/examples/

+1

リンクが切れています。たぶんあなたの答えに少しのサンプルを追加することができますか? :)これはgooglesキャッシュのブログエントリです:http://webcache.googleusercontent.com/search?q=cache:ty68WXOpHXEJ:od-eon.com/blogs/stefan/checking-availability-zeromq-endpoint/+&cd= 2&hl = de&ct = clnk – Theolodis

+0

thx、updated link:基本的なリクエスト/リプライの例をお探しの場合は、さまざまなターゲット言語に対応しています。https://github.com/imatix/zguide/tree/master/例/は、 'rr'の接頭辞の例はリクエスト/返信のサンプルを示しています – raffian

+0

ありがとう、個人的に私は自分自身でgoogleを使うことができますが、これを見つけてリンクに気づいたので、 – Theolodis

関連する問題