Unix ドメインソケットの中断の考えられるシナリオ

Unix ドメインソケットの中断の考えられるシナリオ

TCP&ソケットを使用すると、UDP接続が中断(遅い接続、ネットワークリセットなど)を引き起こす可能性がある多くのシナリオがあります。unix domain socket外部的な理由で自動接続が切断または中断される可能性はありますか?開発者はコードで発生する可能性がある中断を考慮する必要がありますか?

答え1

使用されているソケットの種類やIPCメカニズムに関係なく、サーバーが予期せず終了する可能性は常にあります。これは、次のようなさまざまな理由で発生する可能性があります。

  • 分割エラーやアサーションの失敗によるソフトウェアのバグがクラッシュすることがあります。

  • あまりにも多くのメモリを占有し、Linux OOM Killerによってシャットダウンする可能性があります。 (仮想マシンで簡単に再現可能)

  • 誤って他のユーザーが終了した可能性があります。 Linuxはマルチユーザーシステムなので、誰かが入力したかったのですが、入力したと言って誤ってプロセスを終了する可能性がありkill 1112ますkill 1111

開発者はコードで発生する可能性がある中断を考慮する必要がありますか?

はい。常にそうする必要があります。使用したい関数のマニュアルページを読んで、関数が設定できるすべての可能なerrnos値を読んで、常に最悪のシナリオに備えてください。

関連情報