1

netty の websocket サーバーから定期的に (たとえば n 秒ごとに) データを継続的にプッシュする最良の方法は何でしょうか?

編集 :

私はこの投稿に出くわしました: Netty を使用して Java で継続的なデータを送信するための最良の方法と、答えによると、while/sleep は非常にスケーラブルではありません。Executor でジョブをスケジュールするにはどうすればよいですか?

4

1 に答える 1

4
  1. WebSocketクライアントはNettyサーバーに接続し、ハンドシェイクしてWebSocket接続を確立します。
  2. サーバーは、送信するデータがあるときに取得できる場所にクライアントのチャネルを登録します。(私はシングルトンでChannelGroupを使用します)
  3. スケジュールされたジョブが起動し、どこかからデータを取得してから、クライアントのチャネルへの参照を取得してデータを書き込みます。
  4. クライアントチャネルのパイプラインには、スケジュールされたジョブが提供するデータをWebSocketフレームにマーシャリングするいくつかのエンコーダーが含まれている必要があります。
于 2012-06-05T20:48:38.570 に答える