Recommended URL
Http://www.360doc.com/content/08/0801/18/51673_1498233.shtml
Http://www.360doc.com/content/09/0919/11/52464_6163205.shtml
Http://www.cnblogs.com/artech/archive/2007/09/09/887528.html
Http://www.360doc.com/content/11/0408/15/4512349_108169302.shtml
1.aspnet_wp.exe worker process is the core of the Asp.net application in iis5. it is responsible for all client requests and gives responses.
2.w3wp.exe worker process is the core of the Asp.net application under IIS6 and iis7. It is responsible for all client requests and gives responses.
3. the application pool is the worker process container. This concept is not found in iis5. It is introduced in IIS6 to prevent worker process (aspnet_wp.exe in iis5, only one process can be run on the server at the same time), resulting in full application crash (iis5 introduces the appdomain concept to prevent this problem, attempts to run multiple Web applications in a process through appdomain isolation, isolated from each other, but not particularly successful ).
4. Relationship between worker process and application pool
For iis5, because the application poolapplication pool is not introduced yet, the entire server can start a w3wp.exe workflow, which is prone to problems.
For IIS6 and iis7, a server can start multiple w3wp.exe worker processes. Generally, each application pool creates a w3wp.exe process. However, when web garden is enabled, one application pool corresponds to multiple w3wp.exe workers.
5. Web garden indicates that a Web application can be executed in multiple processes (w3wp.exe). One request applies to one of them to improve program availability. When a process fails, other processes are not affected. However, to use web garden, you need to discard the inproc session and store the session in State Serivce.
6. In iis7, the command for viewing the application pool corresponding to w3wp is c: \ windows \ system32 \ inetsrv \ appcmd.exe list WP.
7. After the request is passed to the worker process.
In the ASP era of iis3 and IIS4, ASP. dll is directly integrated into IIS, and it is bound to death.
In the Asp.net era of iis5 and ASP. DLL is upgraded to aspnet_isapi.dll, and workers are independent working processes, so IIS and Asp.net are independent processes. To enhance the scalability of Asp.net runtime, aspnet_isapi.dll has very few functions, we can simply regard aspnet_isapi.dll as the request information router, and find the processing program with this suffix based on the request URL suffix, that is, it is responsible for transmitting the request from IIS to Asp.net runtime. Later, httphandle and httpmodule assume ISAPI
Extension and ISAPI filter functions.
In the IIS6 era, http.syssends requests to w3wp.exe, w3wp.exe loads aspnet_isapi, initializes CLR, and so on.
In the iis7 era, aspnet_isapi is no longer used in the integration mode. Instead, httphandler and httpmodule are used directly.
8. One sentence.
Iis3 and IIS4 are used to process ASP programs.
Iis5 and can only work in one process (aspnet_wp.exe), implementing the complete separation between Web server(inetinfo.exe) and Asp.net application(aspnet_wp.exe.
IIS6, you can perform multiple jobs (w3wp.exe), introduce the concept of application pool (a website corresponds to an application pool, and an application poolcorresponds to a w3wp.exe, if the web garden can correspond to multiple w3wp.exe), introduce HTTP. sys is used to listen to users' requests. After receiving the request, it finds the corresponding application pool and forwards the request. When the application pool is initialized, Asp.net is loaded.
ISAPI, Asp.net ISAPI, load CLR, create application domain, and then send the request to Asp.net HTTP runtime pipeline. The main improvement from iis5 to IIS6 is HTTP. sys.
Iis7: the major improvement from IIS6 to iis7 is ISAPI, which can be used in integration mode.