请求管道
1.使用进程外Session的缺点: 1.使用序列化和反序列化 2.因为要把Session数据发送给 状态服务程序或数据库, 所以存在发送数据时的资源消耗
2.优点:存储的数据量大
1.BeginRequest 开始处理请求 2.AuthenticateRequest 授权验证请求,获取用户授权信息 3.PostAuthenticateRequest 获取成功 4.AunthorizeRequest 授权,一般来检查用户是否获得权限 5.PostAuthorizeRequest 获得授权 6.ResolveRequestCache 获取页面缓存结果(如果没有则执行) 7.PostResolveRequestCache 已获取缓存 8.PostMapRequestHandler 创建页面对象 9.AcquireRequestState 获取Session -- 先判断当前页面对象是否实现了IRequiresSessionState接口,如果实现了,则从浏览器发来的请求报文头中获得SessionId,并到服务器的 Session池中获得对应的Session对象,最后赋值给 HttpContext的Session属性。 10.PostAcquireRequestState 获得Session 11.PreRequestHandlerExecute 准备执行页面对象 ×执行页面对象的ProcessRequest方法(1.ashx,1.aspx),如果请求的是1.aspx,则会运行页面生命周期 12.PostRequestHandlerExecute 执行完页面对象了 13.ReleaseRequestState 释放请求状态 14.PostReleaseRequestState 已释放请求状态 15.UpdateReuqestCache 更新缓存 16.PostUpdateRequestCache 已更新缓存 17.LogRequest 日志记录 18.PostLogRequest 已完成日志 19.EndRequest 完成