My FastCGI app on IIS won't start until its page is fetched the first time (demand-start). I want it to start earlier and be ready for the first fetch. I see various parameters for influencing its operation, but can't find this one. (As you can imagine, my app does a lot on startup, so that first page fetch is unacceptably slow. Subsequent fetches work at the lightning speed I expect.)

In IIS Manager 8, Server (left-hand Connections pane), FastCGI Settings (center pane), right-clicking my app on the list, Edit: I see parameters like Instance MaxRequests, Max Instances, Activity Timeout, Idle Timeout, etc.

Under Server, Application Pools (left-hand Connections pane), right-clicking my mine, Advanced Settings: I see Start Mode: AlwaysRunning. But I also see various Application Pools, and I'm not 100% confident that the Application Pool I'm looking at is the application pool that's really running my app. Or is all this application pool stuff barking up the wrong tree?

Under Sites, my site (left-hand Connections pane), there's no FastCGI option on the center pane. Under Handler Mappings (center pane), my app is on the list, tied to the path, and that all works. No other options that I can tell.

Further, while IIS runs my external FastCGI process, it clearly doesn't obey all the parameters I set for it. For instance, I set Max Instances to 1, but it still runs 2 or more instances.

How do I get it to run one instance, and start with the server?


The Start Mode (OnDemend / AlwaysRunning) is an Advanced Setting of an Application Pool.

To find the correct Application Pool:

  1. Select the site from Sites.
  2. In the Actions on right pane, you can find View Applications.
  3. Here, you can find a list off the applications, with column Application Pool.

    enter image description here

If your application is not listed there, DefaultAppPool and its settings can be assumed. You can also filter Applications by Application Pool by selecting the pool from Applications Pools list and the Actions > View Applications from there:

enter image description here

The Remove filter link in the picture is also very useful as it gives a list of all Applications regardless Site and Application Pool.

  • I've been through all this, but still get multiple instances when they're not necessary. Perhaps being able to have IIS tell me exactly why it's starting a new instance would be what I need. – JimB Jun 8 '17 at 11:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.