6

15分ごとにURLにpingを実行し、サーバーから応答を返すことができるc#の方法はありますか?

.netを使用して、asp.net Webサイトに再構築を呼び出させ、アプリケーションの起動時に最初のユーザーに負荷ペナルティが発生しないようにするための単純なツールを構築できるかどうかを確認したいと思います。

または誰かが同じ目標を達成するための別の方法を持っている場合...考え?チップ?アイデア?

4

6 に答える 6

9

通常、リリースをプッシュする人は、テストのためだけにサイトをアップロードした後にアクセスする必要があります(何も爆撃されていないことを確認してください)。しかし、プログラムによるアプローチを探しているなら、WebClient役に立つかもしれません...

using (WebClient client = new WebClient())
{
  client.DownloadString("http://wwww.sitename.com/");
}

次に、それをexeにし、Windowsスケジューラを使用して実行します。これをWinServiceに入れて、ステータスをログファイルに報告することもできます。

アップデート:

VS2012は公開後にページを開くようになり、サイトをプッシュする人が最初のリクエストになります。

また、頻繁に(15分ごとに)アクセスする必要がある場合は、IIS / AppPoolの再構成を調べて、サイクルタイムをもっと長いものに変更することをお勧めします。IISは、使用されていないリソースをネイティブに保存するため、サイトがしばらくクエリされていない場合、別のアプリケーションが使用できるように実際にメモリを解放します。

于 2010-11-19T14:47:05.693 に答える
5

あなたはあなた自身を書く必要がないかもしれません:

http://learn.iis.net/page.aspx/688/using-the-iis-application-warm-up-module/

于 2010-11-19T14:49:17.207 に答える
3

HttpWebRequestを作成し、Quartz.NETなどを使用してスケジュールを設定できます。

于 2010-11-19T14:45:32.560 に答える
1

curlをインストールし、スケジュールされたタスクを使用して、必要な処理を実行します。

これをPowerShellと組み合わせて、アプリプールも再起動しました。

于 2010-11-19T14:50:55.850 に答える
1

あなたはただ発砲することができWebRequestます-pingはウェブサイトを再構築させません。

于 2010-11-19T14:46:36.473 に答える
0

ASP.NETアセンブリをNGENし、それをHectorウォームアップ回答と組み合わせることができます。

于 2010-11-19T14:55:26.207 に答える