1

サーバーが稼働しているか停止しているかを監視したいのですが、問題を解決するには ping を実行するのが最善の方法だと思います。サーバーのリスト(データベースから取得)にpingする関数TestServerへのasp.netの繰り返し呼び出しを「スケジュール」するにはどうすればよいですか?おそらく、ソフトウェアを 2 つの部分に分割するのが最善でしょうか?

  1. データベースからデータをロードする ASP.NET ビュー (サーバー、ステータス (アップダウン))

  2. A.. 1 分ごとに ping を実行するコマンド ライン .net アプリケーション ?

ありがとう

4

2 に答える 2

1

Nagios を使用してサーバーを監視してみませんか? ここで見つけることができます: http://www.nagios.com/ . このソフトウェアは、あらゆるタイプのサーバー、サーバー上のソフトウェア、ネットワーク接続、データベース、ルーターなどを監視するように作成されています。インストールすると、すぐに使用できるプラグインの完全なスイートがあります。デフォルトのプラグインでは不十分な場合は、独自のプラグインを作成することもできます。

Nagios には、Linux または Windows の環境を監視する機能があります。プラグインは、要件に準拠している限り、任意の言語で作成できます。私の会社ではこのツールを実行しており、すべてのシステムを監視しています。各チームが自分のシステムを監視できるように、システムを特定のユーザーに割り当てることができる優れたダッシュボードを提供します。これは正直なところ、私が行く方法です。

編集: Nagios は問題外のように聞こえるので、サーバーのリストを取得してそれらに ping を実行するコンソール アプリを作成することをお勧めします。これにデータベースを使用する代わりに、サーバーのリストを含む構成ファイルを作成します。アプリを実行するには、Windows スケジューラを使用して、このアプリが X 分間隔で実行されるようにスケジュールし、結果をログ ファイルに書き込むか、結果を使用して別の処理を行います。タイマーを使用してアプリをバックグラウンドでフルタイムで実行する代わりに、スケジューラーが最善の策です。

于 2012-06-21T15:40:32.990 に答える
0

おそらく、作業 (データベースのクエリ、ping テストの実行、結果の記録) を行う単一のコンソール アプリを作成し、Windows タスク スケジューラを使用して、特定の時間間隔でこのプログラムを実行します。

http://windows.microsoft.com/en-us/windows7/Schedule-a-task

コンソール アプリ内で、HttpWebRequest クラスを使用して ping を実行します - http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.aspx

于 2012-06-21T15:29:03.937 に答える