TCP/IP を使用したカスタム プロトコルを持つ Java クライアント サーバー アプリケーションがあります。デッド ソケット接続の問題により、プロトコル内でハートビートを使用する必要があることがわかりました。
最初からクライアントからサーバーへのハートビートがあり、サーバーは確認応答で応答しています。
最近、クライアントでタイムアウトの問題が発生しました。コードを分析したところ、不明な点がいくつかありました。
1 - ハートビートに最適な方向はどれですか。サーバーの負荷がかかるため、「クライアントからサーバーへ」を選択したと思います。「サーバーからクライアントへ」に変更することを考えていましたが、クライアント コードとサーバー コードの両方を制御できるので、クライアントの時間を浪費することについてそれほど心配する必要はありません。
2 - 接続が双方向で有効であることを証明するために、ハートビートを確認する必要がありますか?
どうもありがとう