45

私の Web サイトには、サイトの正常性を報告し、HTTP 200 ステータス コードを設定するページがあります。すべて問題ありません。このページは、サイトが稼働していることを確認するために外部監視プログラムによって使用されます。

このページが表示されると、非常に軽量な DB proc 呼び出しを実行して、DB が正常に動作しているかどうかを確認します。これが失敗した場合は、意味のある HTTP エラー コードをモニターに返して、すべてがうまくいかないことを知らせたいと考えています。

私が調べたところ、「私が依存しているサードパーティのコンポーネントがダウンしています」という HTTP ステータスはありません。この場合、何を返しますか?

503 サービスを利用できません...?

4

3 に答える 3

41

まさに503ですね。

503 は、サーバーが他のサービスの接続に依存していたため、時間内に応答しなかったことを意味します。

サーバー エラー 5xx

ウィキペディアで調べてみると、そこにあるリストは、私が考えているのは 504 であることを暗示しているようです。おそらくリンク先が古くなっている可能性があります。

そう:

504ゲートウェイのタイムアウト

サーバーはゲートウェイまたはプロキシとして機能しており、ダウンストリーム サーバーからタイムリーな要求を受け取りませんでした。

于 2009-09-16T17:23:20.543 に答える
37

500か503が適切だと思います。503 は通常、過負荷またはメンテナンス状態で使用されますが、あなたの状況で使用しても無理はないと思います。

于 2009-09-16T17:18:34.563 に答える
-1

ステータスの戻り値以上のものに基づいて監視する必要があるようです。HTTP ステータス コードが通信するように設計されているよりも高度な情報を渡そうとしています。

または、コードを選択して作成し、監視を設定して「データベースダウン」として処理するだけです。

于 2009-09-16T17:21:41.343 に答える