asp.net应用程序的生命周期和iis应用程序池
本文导语: 应用程序池就是将一个或多个应用程序连接到一个或多个工作进程的配置。因为应用程序池中的应用程序与其他应用程序被工作进程边界分割,所以某个应用程序池中的应用程序不会受到其他应用程序池中的应用程序所产...
应用程序池就是将一个或多个应用程序连接到一个或多个工作进程的配置。因为应用程序池中的应用程序与其他应用程序被工作进程边界分割,所以某个应用程序池中的应用程序不会受到其他应用程序池中的应用程序所产生问题的影响,web农场就是将一个应用程序部署在多个服务器上,要配置应用为web农场,需将web.config中的sessionState>节点的mode属性设置为StateServer或者SqlServer。
web园就是在一个服务器上将应用程序池中的工作进程设置为多个。
获取asp.net是以什么身份运行的:System.Security.Principal.WindowsIdentity.GetCurrent().Name
asp.net 2.0应用程序的生命周期:
1、当网站应用程序接收到第一个请求时,首先将经过HTTP.sys的合法性检查,www服务和管理程序将启动工作进程处理请求asp.net应用程序的生命周期以客户端向web服务器发送请求为开始。
2、当asp.net处理器接收到客户端对应用程序中任何资源的第一个请求时,名为ApplicationManager的类会创建一个应用程序域,在应用程序域中将会创建ostingEnvironment类的一个实例,该实例提供了对有关应用程序的信息访问,一个应用程序对应一个HostingEnvironment实例。
3、创建了应用程序域并对HostingEnvironment对象实例化之后asp.net将创建并初始化核心对象,如httpcontext,httprequest和httpresponse。
4、初始化所有的核心应用程序对象之后,将通过创建HttpApplication 类的实例启动应用程序。
5、在处理该请求时或者将响应返回给客户端时,HttpApplication类执行一系列事件,开发人员可以充分利用这些事件实现自己的功能。