I understand the limitations of using application state and session state accross multiple application pools, that they cannot be shared. What about the Global.asax file is a single instace created per application pool or does it reside in a higher level somewhere common to all application pools in IIS?
A:
Global.asax (which is just a class file for HttpApplication) is contained by whatever application pool the site resides in. Just the same as any other class in your site. If you are using web gardening, then the same rules that apply to application/session state applies to code in global.asax. In other words, if you are running on 4 processors, when processors 1, 2, and 3 and busy, and #4 takes it's first request, any code that is in global.asax (event handlers, etc) is going to be executed.
Bill
2009-03-04 14:27:16