[解決済み] TCPコネクションをオープンにしておくためにハートビートは必要ですか?
質問
TCP/IP で通信する 2 つのコンポーネントがあります。 コンポーネントAはサーバー/リスナーとして動作し、コンポーネントBはクライアントです。 この2つはできるだけ早く通信する必要があります。 接続は常に 1 つだけです (この質問には関係ありませんが)。 私の会社のシニア開発者は、2 つのコンポーネント間でアプリケーション レベルのハートビートを使用して、接続が開いたままであることを確認する必要があると言いました。
私は、接続は TCP/IP で開いたままであると考えましたが、これらのアプリケーション間でハートビートを行うことはかなり標準的なプラクティスであると、多くのブログ/サイトを読みました。
コンポーネント A がコンポーネント B をハートビートする理由の一部は、コンポーネント B との通信に問題がある場合 (リンクがダウンしているか、コンポーネント B が実行されていないか) サポートに知らせることができるためであることは知っています。 ハートビートは他の理由でも必要なのでしょうか?たとえば、パイプを開いたままにしておくために、パイプの中に頻繁に何かがあることを確認するためなどですか?
コンポーネント A は現在、コンポーネント B を 20 秒ごとにハートビートし、120 秒間にコンポーネント B から何も受信されなかった場合、接続を閉じます。 その後、コンポーネント B がリンクが切断された場合に定期的に再接続を試みるという前提で、接続のリッスンを再開します。 これは正常に動作します。
私の質問を再度繰り返します。 TCP/IP 接続を維持するためにハートビートは必要ですか?
どのように解決するのですか?
接続方法 が必要です。 は関係なく開いたままですが、死んだ接続を検出するためにプロトコルがハートビートを実装するのはよくあることで、IRC では PING コマンドのようなものです。
関連
-
[解決済み] ai_socktypeではServnameはサポートされません。
-
[解決済み] クライアントソケットアプリケーションは、同じホストコンピュータ上のサーバーアプリケーションをどのように識別するのでしょうか
-
[解決済み] Mac OS Xで、指定したTCPポートでリッスンしているのは誰ですか?
-
[解決済み] コネクション・リセット・バイ・ピア」とはどういう意味ですか?
-
[解決済み] TCP:2つの異なるソケットでポートを共有することができますか?
-
[解決済み] ネットワークプログラミングにおけるストリームとデータグラムの違いは何ですか?
-
[解決済み] TCPループバック接続とUnixドメインソケットの性能比較
-
[解決済み] ソケットAPIのaccept()関数はどのように動作するのですか?
-
[解決済み] TCPソケットとUDPソケットは同じポートを使用することができますか?
-
[解決済み] Chromeが一定量のデータ転送後にハングアップする - 利用可能なソケットを待つ
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ai_socktypeではServnameはサポートされません。
-
[解決済み] クライアントソケットアプリケーションは、同じホストコンピュータ上のサーバーアプリケーションをどのように識別するのでしょうか
-
[解決済み] TCPソケットとWebソケットの違い、もう一回 [重複].
-
[解決済み] TCP:2つの異なるソケットでポートを共有することができますか?
-
[解決済み] ネットワークプログラミングにおけるストリームとデータグラムの違いは何ですか?
-
[解決済み] TCPループバック接続とUnixドメインソケットの性能比較
-
[解決済み] TCPソケットとUDPソケットは同じポートを使用することができますか?
-
[解決済み] TCPオプションSO_LINGER(0)はいつ必要ですか?
-
[解決済み] Chromeが一定量のデータ転送後にハングアップする - 利用可能なソケットを待つ