サイトへのpingは、それがダウンしているかどうかを確認する良い方法ですか?

StackOverflow https://stackoverflow.com/questions/4539171

質問

私は小さなWebサイト監視プログラムを作成しようとしています。これは、Webホストがダウンしているかどうかを確認し、稼働時間を計算したり、ダウンしているかどうかを警告しようとしています。スタンドアロンアプリになります。

pingingがサイトがダウンしているかどうかを知る良い方法であるかどうかを知りたかったのですか?

前もって感謝します。

役に立ちましたか?

解決

そうです 1 あなたができることですが、それは決して確実ではありません。

一部のサイトでは、ICMPパケットを無視して、ping応答が与えられないようにします。一部のサイトは、Webサーバー(またはあなたが残しているサービス)がダウンしている場合でも、Pingに応答します。

特定のサイトがサービスを提供することを確信できる唯一の方法は、そのサービスを使用することです。他に何も正確ではありません。

より良い方法は、少なくとも制御できるインフラストラクチャで、障害がどこにあるかを検出する一連のステップを提供することです。例えば:

  • pingを受け取り、行動することを許可します。
  • Webサーバーに静的Webページを持っています。
  • 静的コンテンツを配信するダイナミックページをアプリケーションサーバーに持っています。
  • データベースを使用するアプリケーションサーバーにダイナミックページがあります。

次に、テスタークライアントは、これらの4つのポイントを「連絡」し、成功を報告しようとするだけです。ほとんどの場合、サイトがアップすることを期待するので、4番目のオプションをチェックしてすべてが問題であるかどうかを確認し、問題が見つかった場合にのみ他のチェックを行います。

他のヒント

それはあなたがpingを定義する方法に依存します。 「低レベル」のICMPエコーについて話している場合、サイトがダウンしているかどうかの適切な指標になる可能性は低いです。 HTTPサーバーが実行されていることを確認するために、実際にアプリケーションをサイトから引き下げてもらう方が良いでしょう。これにはたくさんのサービスがあり、おそらくGoogleからダウンロードできるコードもあります。 http://www.dailyblogtips.com/test-if-if-a-website-is-down-for-everyone-or-for-your/

ICMPは、サーバーが生きていることを証明できます。

TCPチェックは、Webサーバーが機能していることを示すことができますが、サイトは表示されません。

サイトチェックを実行するには、ページが問題ないことを確認するために、HTTP Get Request(Headが時々機能しない)を実行する必要があります(ステータス200を返す)

独自のチェックシステムを作成したり、次のようなサードパーティサイトを使用したりできます。 http://allping.net/

Pingは、特定の場所からの遅延の洞察を提供し、可能なネットワークの問題(パケット損失)を指し示します。前の回答で述べたように、一部のサーバーはPingリクエストに応答しません。その場合、Pingは役に立たない。世界中の50を超える場所からPingでサーバーを確認するには、この無料ツールをご覧ください。 http://just-ping.com/

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top