What is Web Gardening? How would using it affect a design?
Nipun Tomar
web garden:
The process model helps enable scalability on multiprocessor computers by distributing the work to several processes, one per CPU, each with processor affinity set to its CPU. This eliminates cross-processor lock contention and is ideal for large SMP systems. This technique is called Web gardening. The configuration settings for enabling Web gardens are listed in the following table. Note that these settings take effect only after a server is restarted. IIS must be cycled in order for this change to take place.
Setting Description :webGarden Controls CPU affinity. True indicates that processes should be affinitized to the corresponding CPU. The default is False. cpuMask Controls the number of processes and how the Web garden works. One process is launched for each CPU where the corresponding bit in the mask set to 1. When UseCPUAffinity is set to 0, the cpuMask setting only controls the number of worker processes (number of bits set to 1). The maximum-allowed number of worker processes is the number of CPUs. By default, all CPUs are enabled; the same number of worker processes is launched as there are CPUs. The default value is 0xffffffff.
Web gardening has some side effects that you should be aware of: If your application uses session state, it must choose an out-of-process provider (NT Service or SQL). Application state and application statics are per process, not per computer. Caching is per process, not per computer