一次http请求的全过程(附mmap文件下载)

这几天看了一些资料,梳理了下web方面的知识,发现很多东西都是知表面而不知背后真正的原理,于是用MindManager画了这幅图,不是很完整,不过在理解的过程中会陆续更新这张图(可点击或者另存为后查看大图),

2011021219081535.png

看了godspeed的关于asp.net生命周期的一个系列很形象收获颇丰,零散的记录些重点以便复习:

服务器接收到来自浏览器端的请求根据后缀名是.aspx来确定接下来的工作交由ASP.NET处理ASP.NET先创建一个Context对象然后创建一个Request对象放到Context对象中,它包含了IIS传递给它的所有信息本次请求header + body接着又创建一个Respone对象用来装HTML,并放进Context中      

2011022600273176.jpg
IIS是怎么识别.aspx的过程:

请求到达IIS时候会根据应用程序配置找到.aspx对应的处理程序aspnet_isapi.dll

aspnet_isapi.dll创建并监视并持续监视一个aspnet_wp.exe进程(asp.net最重要的组件:worker process,几乎所有的工作都是在这个进程中完成,它在IIS6中被改名叫做w3wp.exe)IIS6则通过内核模式中的HTTP.SYS来“看”那些进来的Request。HTTP.SYS把进来的Request发送到相应的Application Pool(应用程序池)。应用程序池再把Request传递给aspnet_isapi来进行创建worker process的工作。IIS6中的worker process已经是w3wp.exe了。aspnet_isapi.dll在创建了worker process加载了CLR完成了托管环境的布局后,就什么都不管了。

Worker process开始管理一切,它把所有的工作都交给了HttpRuntime。

HttpRuntime雇佣了项目经理HttpApplication。然后,HttpRuntime并不是什么工作都没有做,它已经通过配置文件创建了所有的HttpModule并填写在了HttpApplication的“工作列表”中,项目经理HttpApplicaiton事根据这个列表来工作的。HttpRuntime也创建了HttpContext这个箱子并交给了项目经理HttpApplication

HttpRuntime所做的事情:

1,打造了HttpContext这个箱子来存储Request和Response

2,建立了工作列表HttpModule(通过配置文件创建了所有的HttpModule并填写在了HttpApplication的"工作列表"中)

3,雇佣了项目经理HttpApplication并把箱子Context交给它,然后把工作列表作为效绩考核列表也交给他。

4,等着返回结果

mmap文件下载:

 一次http请求的全过程.mmap

看到本文的朋友如果觉得有错误请留言指出,谢谢

转载于:https://www.cnblogs.com/aNd1coder/archive/2011/02/12/1952780.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
取于网络,回归于网络。 (人力) 项目组成员访谈表.mmat (全局) 项目主视图.mmat (全局) 项目会议.mmat (基础) 项目定义.mmat (控制) 项目报告.mmat (控制) 项目状态报告.mmat (控制) 项目状态报告列表.mmat (结项) 培训.mmat (结项) 项目评审.mmat (计划) 工作分类结构(WBS).mmat (计划) 项目干系人满意定义.mmat (计划) 项目沟通路径.mmat (计划) 项目组成员.mmat (计划) 项目组成员列表.mmat (计划) 项目计划包含阶段.mmat (计划) 项目资源.mmat (计划) 项目风险评估.mmat 90天角色转换-new.mmap New Blank Map.mmat Outlook控制盘.mmat SWOT 分析.mmat SWOT分析法.mmap 一周计划.mmat 三年前的选择.mmap 个人简历.mmat 举办活动.mmap 书籍出版.mmat 企业组织图 .mmap 会议组织.mmat 会议记录.mmap 会议记录1.mmap 公司架构图.mmat 写作计划.mmap 决策.mmap 创建流程.mmat 加强抵御灾害风险的能力.mmap 口才(利兹).mmap 国家信息化发展战略.mmap 培训计划.mmat 头脑风暴 brainstorming.mmap 工作找寻.mmat 工艺流程.mmat 市场战略.mmat 市场策划.mmat 市场策略.mmat 平衡积分卡.mmat 平衡计分卡.mmap 待办事宜1.mmat 待办事宜2.mmat 待办事项备忘录.mmap 战略决策-SWOT分析.mmat 战略决策-SWOT分析实例.mmat 战略规划.mmat 整理旅行箱.mmat 文件处理 Process Documentation.mmap 旅游计划1.mmat 旅游计划2.mmat 旅行计划.mmap 格雷大学课程计划.mmap 模板汉化说明.txt 汽车销售流程图.mmap 状态报告.mmat 盈亏分析 Win_Loss_Analysis.mmap 空白图表(Tablet).mmat 空白图表.mmat 简历.mmap 组织会议.mmat 组织架构图(一).mmat 组织架构图(三).mmat 组织架构图(二).mmat 组织架构图(四).mmat 营销策略 Marketing Strategy.mmap 著作出版.mmat 行李清单.mmap 论文计划 Paper Planning.mmap 资产负债表.mmat 软件公司技术管理.mmap 软件需求分析工作.mmap 进行决策.mmat 部门架构图.mmat 项目仪表板.mmat 项目审核检查单.mmap 项目工作交流.mmap 项目控制.mmat 项目时间线.mmat 项目时间表.mmat 项目状态.mmat 项目管理.mmat 项目规划.mmat 项目规范.mmat 项目计划 projectPlanning.mmap 项目进展报告 Status Report.mmap 风险管理.mmat 等等...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值