タイムアウト(コンピューティング)

ウェブブラウザがページを読み込めなくなるネットワークタイムアウト

電気通信および関連工学(コンピュータネットワークプログラミングを含む)において、「タイムアウトという用語には、以下を含むいくつかの意味があります

  • あらかじめ決められた経過時間の終了時に発生するように設計された強制イベントに関連するネットワークパラメータ。
  • 指定されたイベントが発生する前にシステム内で経過が許容される指定時間。ただし、先に別の指定されたイベントが発生した場合を除く。いずれの場合も、いずれかのイベントが発生した時点でこの期間は終了する。注:タイムアウト状態は、適切なタイムアウトキャンセル信号を受信することでキャンセルできる。
  • 指定された別のイベントの発生を起点として、一定期間の経過後に発生するイベント。適切なシグナルによってタイムアウトを回避できます。

タイムアウトは、限られたリソースをより効率的に利用することを可能にします。その際、リソースの消費を引き起こす財に関心を持つエージェントからの追加的なインタラクションを必要としません。基本的な考え方は、システムが何かが起こるのを待たなければならない状況において、無期限に待機するのではなく、タイムアウト期間が経過すると待機を中止するというものです。これは、それ以上の待機は無意味であり、何らかの別のアクションが必要であるという仮定に基づいています。

課題

分散システムとマイクロサービスにおけるタイムアウト値のバランスを取るのは難しい場合があります。タイムアウト値が短いと、正常なリクエストが早期に失敗し、複雑な回避策が必要になる可能性があります。一方、タイムアウト値が長いと、エラー応答が遅くなり、ユーザーエクスペリエンスが低下する可能性があります。サーキットブレーカー設計パターンは、サービスの健全性を監視し、障害を動的かつ迅速に検出し、ユーザーエクスペリエンスを向上させることができるため、より良い代替手段となる可能性があります。[ 1 ]

タイムアウト
開発者Microsoft、ReactOS貢献者
オペレーティングシステムWindowsReactOS
タイプコマンド
ライセンスWindows:独自の商用ソフトウェア ReactOS: GNU General Public License
ウェブサイト docs.microsoft.com /en-us / windows-server /administration /windows-commands / timeout_1

具体的な例としては次のようなものがあります。

  • Microsoft WindowsReactOS [ 2 ]のコマンドラインインターフェースでは、このtimeoutコマンドは指定された秒数の間コマンドプロセッサを一時停止します。[ 3 ] [ 4 ]
  • POP接続では、通常、一定時間(タイムアウト時間)の非アクティブ状態が続くと、サーバーはクライアントとの接続を閉じます。これにより、クライアントがクラッシュしたりネットワークがダウンしたりしても、接続が永久に継続されることがなくなります。接続が開いているとリソースが消費され、他のクライアントが同じメールボックスにアクセスできなくなる可能性があります。
  • HTTP持続接続では、ウェブサーバーは開かれた接続(CPU時間メモリを消費します)を保存します。ウェブクライアントは「リクエストシリーズの終了」信号を送信する必要がありません。接続は5分間操作がないと閉じられます(タイムアウト)。これにより、接続が無期限に継続することがなくなります。
  • タイマー付き照明スイッチは、消費電力とランプ寿命の両方を節約します。ユーザーが手動でスイッチを切る必要はありません。
  • タブレット コンピュータースマートフォンでは、通常、ユーザーによる入力がないと一定時間後にバックライトがオフになります。
  • ReDoS正規表現によるサービス拒否)を防ぐために、タイムアウトを使用して、時間のしきい値を超えた正規表現マッチング呼び出しをキャンセルすることができます。 [ 5 ]

参照

参考文献

  1. ^ Richards, Mark (2016).マイクロサービスのアンチパターンと落とし穴. セバストポル、カリフォルニア州: O'Reilly. OCLC  1040037729
  2. ^ "timeout.c" . 2025年9月27日閲覧– GitHub経由。
  3. ^ "timeout" . docs.microsoft.com . 2023年2月3日. 2025年9月27日閲覧
  4. ^ "TIMEOUT.exe (Windows 7/2008以降)" . ss64.com . 2025年9月27日閲覧
  5. ^ "Regex.MatchTimeout プロパティ (System.Text.RegularExpressions)" . learn.microsoft.com . 2025年9月15日閲覧

さらに詳しい情報