1

私は基本的にこれをやっています:

  1. REQ ソケットを持ち、REP (ハートビート) に接続します
  2. 接続がタイムアウトした場合 ( setTimeOut)、カウンターを増やします
  3. カウンターが所定のしきい値よりも大きい場合は、反対側を DOWN としてマークします (ハートビートではありません)。
  4. 反対側が応答した場合、カウンターをリセットします。
  5. 繰り返す

これには、タイムアウトが発生したときに次のsendメソッドが発生するという問題があります。

Exception in thread "Thread-1" org.zeromq.ZMQException: Operation cannot be accomplished in current state(0x9523dfb)

どうすればよいかわかりません。これはaである程度解決されましたPollerが、やり過ぎのようです。ここで最善のアプローチは何ですか?ソケットを再作成しますか? 別の戦略を試してください (PUSH-PULL かな?)。

ありがとうございました。

4

0 に答える 0