Thanks for the link Domenico. The KB article you referenced mentions XP and Windows 2003 Server having a problem managing more than 60 and 120 service instances respectively. Our SOCs run on Windows Server 2008, so at least we don't have the particular limitation addressed.
...
> This means that there is little reason to have so many service instances configured for even a
> very powerful machine. Instead, the ArcGIS Server administrator should configure the services to
> run with Minimum Instances equal to zero, Capacity on the machine set to a number less than 60
> or 120 on Windows XP and Windows Server 2003, respectively, and allow the internal
> pool-shrinking algorithms to optimize instance availability. With minimum instances set to 0 and
> Capacity properly set, the ArcGIS Server can have many (hundreds) services efficiently running
> simultaneously without running into the Windows process limit described in this article. ..."
Although it sounds interesting and I'll have to give it more thought, I see a few problems with the KB article author's approach:
1) Elsewhere, Esri says one of the worst things you can do is have SOC processes spin-up during peak load times. Evidently this can kill performance. The advice here doesn't account for that cost.
2) While the article recommends a service instance min of 0 (which may be appropriate for rarely used services), the advice is incomplete--they do not provide guidance on what the max value should be and thus make pool shrinking sound too good to be true. While I don't fully understand pool shrinking, I find it hard to believe it's ever appropriate (for high throughput systems) to "set it and forget it", e.g. to set all service instance mins to zero, set appropriate SOC capacities, then let an algorithm take over--unless min and max are now considered to be legacy parameters.
Does anyone here with a high throughput system and many dozens of services use the KB article-suggested approach? How well does it work under peak loads?