2017-10-26 4 views
1

誰かがアプリケーションのウォームアップにASP.NETメソッドApplication_Startを使用して異論を知っていますか?通常のファイルをプリロードするために必要とされるウェブ・サービス、ために特にウォームアップにASP.NET Application_Startを使用することに異論はありますか?

、アルゴリズムをキャッシュしてなど

が存在します

しかし、両方の方法はどのような多くの-多くのアプリケーションの場合と不快であるとリリースに関するその他のリスクがあり、各アプリケーションのIIS構成の変更を必要とします。 ASP.NET Application Life Cycle Overview for IIS 5.0 and 6.0に従って

ASP.NETは、アプリケーションドメインの寿命のためにではなく、それぞれのHttpApplicationインスタンスに対して一度(のApplication_StartとApplication_End)それらを呼び出します。

したがって、のApplication_Startは例えば、ウォームアップコードのための最高の場所のように思える:

protected void Application_Start(object sender, EventArgs e) 
{ 
    Task.Run(WarmUpBackend); 
} 

それだけAlwaysRunningとしてIISアプリケーションを設定する必要です。 WarmUpBackendでは、Webサービスに必要なものすべてを事前にロードできます。

答えて

0

Service autostart providerを使用する方がよい場合があります。

Scott Guthrieには、このブログ記事があります。

+0

Joe、ありがとう、なぜこのアプローチがApplication_Startよりもこのシナリオを解決するよりも優れていますか?私の質問は、Webページへのリクエストなしに、いくつかのWebサービスのウォームアップに関するものです。なぜならWebサービスのためには、通常、最も高価なもの:DBへの問い合わせ、キャッシュへの事前ロードなどです。 –

関連する問題