web-dev-qa-db-ja.com

「アプリケーションプールをすぐに開始する」と「開始モードを常に実行する」の違い

IISマネージャーでは、アプリケーションプールには、基本設定ダイアログの[アプリケーションプールをすぐに開始する]チェックボックスと、 "開始モード"と呼ばれる詳細設定があり、 "オンデマンド"または " AlwaysRunning」。

これらの設定の違いは何ですか?

21
Ergwun

元のポスターと同じ質問がありましたが、簡潔な答えは見つかりませんでした。以下は、私の研究による分析です。


アプリケーションプール!=ワーカープロセス(w3wp.exe)

  • 通常アプリケーションプールごとに1つのw3wp.exeインスタンスが実行されていますが、技術的には複数のw3wp.exeインスタンスが実行されているWebガーデンを構成できます。
    Webガーデン...それらは良いのか悪いのか、それとも何ですか?
  • ワーカープロセスは、単一のアプリケーションプールのコンテキストで実行されます。


アプリケーションプールをすぐに開始します=自動または手動で開始します
基本設定...

  • 有効
    IISはアプリケーションプールを自動的に起動します。
  • 無効
    誰かが手動でアプリケーションプールを開始する必要があります。


開始モード=ワーカープロセスの開始モード:即時またはオンデマンド
詳細設定...

  • AlwaysRunning
    アプリケーションプールが実行されている場合は、すぐにw3wp.exeプロセスを起動します。
  • OnDemand
    インバウンドアプリケーションリクエストがあるときに、アプリケーションプールが実行されている場合は、w3wp.exeプロセスを開始します。

補足事項

  • IISRESET/stop
    IIS、アプリケーションプール、およびワーカープロセス(w3wp.exeインスタンス)を停止します。
  • IISRESET/start
    Start IISおよび上記の構成設定により、アプリケーションプールとワーカープロセス(w3wp.exe)がいつ起動するかが決まります。

  • IISマネージャーによるWebサーバーの停止GUIアクション
    Webサーバーによるインバウンド要求の処理を停止しますが、アプリケーションプールまたはw3wp.exeプロセスを停止しません。

  • IISマネージャーWebサーバーGUIの開始アクション
    インバウンド要求を処理するためにWebサーバーを開始しますが、アプリケーションプールまたはw3wp.exeプロセスを開始しません。
    Webサーバーを起動/停止するためのメニューアクション

  • IISマネージャーのアプリケーションプール停止GUIアクション
    w3wp.exeプロセスを停止します。

  • IISマネージャーのアプリケーションプールの開始GUIアクション
    w3wp.exeプロセスの起動時に、AlwaysRunningとOnDemandが決定されます。
    アプリケーションプールを開始/停止するためのメニューアクション
10
Jeffrey Hyson

「すぐにアプリケーションプールを開始する」は、World Wide Web Publishingサービスの開始時にアプリケーションプールを「開始する」かどうかを制御するように見えます。ただし、「開始された」アプリケーションプールは必ずしも実行されているわけではありません(つまり、w3wpプロセスがない可能性があります)。

アプリプールが「開始」されていない場合、そのアプリプールを使用するサイトにアクセスすると、503が表示されます。

アプリプールが「開始」されている場合、w3wpプロセスがリクエストを処理します。 「常に実行中」とは、アプリケーションプールが開始されると、w3wpプロセスが開始されることを意味します。 OnDemandは、アプリケーションに関連付けられているWebサイトに最初にアクセスしたときにw3wpプロセスがスピンアップすることを意味します(w3wpの開始中に遅延が発生します)。

6
mhenry1384

少し遅れて返答しましたが、この同じ質問の回答者を見つけるために周りを見回して、私の発見を追加します。

"OnDemand":IISは、Webアプリケーションの最初の要求を受信したときにワーカープロセスを起動します。 "AlwaysRunning":IISとして、アプリケーションプールのワーカープロセスを起動しますIISが開始されるとすぐORアプリケーションプールが作成されたとき。

4
jforjimmy

あたり IIS 8新機能–アプリケーションプールの設定

スタートモード

一部のWebアプリケーションは、起動にかなりの時間がかかります。 IISデフォルトでは、Webアプリケーションの最初のリクエストを受け取ったときにのみワーカープロセスが起動されます。そのため、初期化に長い時間が必要なWebアプリケーションの場合、ユーザーの応答が遅くなることがあります。

そのようなアプリケーションの場合、IISが開始されたらすぐにワーカープロセスを起動することをお勧めします。アプリケーションプールにはstartMode設定があり、AlwaysRunningに設定すると、次のようにアプリケーションプールのワーカープロセスが起動されます。 IISが開始されるとすぐに。

IIS 8では、アプリケーションプール設定UIでこの設定が提供されています。

1
Dave Black