In this blog post, Billy Newport comments on the mechanisms employed that facilitate scaling behaviors in distributed applications.
If I may paraphrase, he mentions three levels of provisioning, 1) Thread Pools, 2) process managers (starting processes on demand), 3) operating system managers (starting OS and related processes on demand) and accurately details the relative costs in terms of latency when leveraging each one.
It is important to note there is a hybrid approach.
In my opinion, he misses one solution that supplies the flexibility and higher-end scalability of process management with the low-latency adaptive scaling of the thread pool, one that can be found within the GigaSpaces product offering:
The GigaSpaces Service Grid combines the concept of Thread Pooling with Process Pooling by suggesting that grid environments can sustain stand-by Java Virtual Machines acting as containers for services that will change in number and location upon demand. GigaSpaces often relies on larger-scale grid management software such as Sun, Platform, or Data Synapse to handle the OS and Process management aspects – these higher-level solutions can adapt the datacenter to the needs of the application trends revealed in real-time using the minutes and seconds required without choking the runtime system, as GigaSpaces utilizes the process buffer prepared for it to scale and relocate services among the available processes and participates in informing the greater grid when trends indicate more resources are likely to be required.
The trump card here is the magical discovery and join behavior that GigaSpaces employs enabling the dynamic increase of numbers of compute resources to have a positive impact to a running system. Additional value is also derived I believe from the multi-tenancy we support – this allowing for maximization of resource utilization accross the GigaSpaces-aware network.
Oh yeah, another thing he doesn't mention is the extra benefit of these scaling mechanisms as potential fail-over and otherwise self-healing infrastructures. This is a crucial component of the value of the GigaSpaces solution.