分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

ASP.NET运行机制

发布时间:2023-09-06 01:08责任编辑:郭大石关键词:.NET运行机制

刚开始与服务器通过3次握手建立连接后将用户动作封装成http请求的报文,然后通过Socket客户端发送到后台服务器
的内核模块中的HTTP.SYS(),然后将请求分发给用户模式中的IIS,IIS中的w3svc服务(svchost.exe)拿到请求后,
如果是静态文件(html,css,js....),直接将请求的文件读取出来封装成响应报文发送给客户端,如果是动态文件,
发现自己处理不了,就去inetinfo.exe进程里面获得当前请求交给谁处理, 再将请求分发给具体的工作进程(w3wp.exe)
里面的aspnet_isapi.dll(IIS6+版本,aspnet_isapi.dll在工作进程的非托管模块里面),然后把请求给托管环境的
ISAPIRuntime的ProcessRequest方法,此方法有一个ecb句柄,
把ecb句柄指向的内容创建成了一个HttpWorkerRequest对象,然后交给HttpRuntime,将创建的HttpWorkerRequest对象
传递给HttpRuntime的PR方法,在HttpRuntime方法内部再将HttpWorkerRequest对象继续封装成高级的HTTPContext
上下文对象,HTTPContext包含了HttpRequest和HttpResponse等对象,然后通过HttpApplicationFactory从对象池
(为了重用对象,解决性能慢的问题,说白了就是一个对象数组)中获取一个HttpApplication实例,让HttpApplication
负责执行管道的流动,然后依次返回给客户端

ASP.NET运行机制

原文地址:http://www.cnblogs.com/xiaoweigogo/p/7800079.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved