惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
Google DeepMind News
Google DeepMind News
MyScale Blog
MyScale Blog
A
About on SuperTechFans
Martin Fowler
Martin Fowler
M
MIT News - Artificial intelligence
Recent Announcements
Recent Announcements
D
DataBreaches.Net
B
Blog
博客园 - 【当耐特】
爱范儿
爱范儿
有赞技术团队
有赞技术团队
P
Proofpoint News Feed
WordPress大学
WordPress大学
小众软件
小众软件
Apple Machine Learning Research
Apple Machine Learning Research
I
InfoQ
Engineering at Meta
Engineering at Meta
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Last Week in AI
Last Week in AI
Microsoft Azure Blog
Microsoft Azure Blog
雷峰网
雷峰网
量子位
G
Google Developers Blog

博客园 - tmfc

LightCloud设计特点 有怪兽,有怪兽 - 通过MONSTER OF COMPRESSION选择压缩算法 LightCloud -- 分布式键-值数据库 [翻译]更有效的使用垃圾收集– 第一部分 企业架构应用模式读书笔记(四) 企业架构应用模式读书笔记(三)下 企业架构应用模式读书笔记(三)上 企业应用架构模式读书笔记(二) 企业应用架构模式读书笔记(一) 对[解耦的故事]的一些补充 解耦的故事(二)-松耦合时代的来临 解耦的故事(一)-tmfc的开关 [翻译]了解ASP.NET底层架构系列文章(包括Word下载) [翻译]了解ASP.NET底层架构(八) [翻译]了解ASP.NET底层架构(七) [翻译]了解ASP.NET底层架构(六) [翻译]了解ASP.NET底层架构(五) [翻译]了解ASP.NET底层架构(四) [翻译]了解ASP.NET底层架构(三)
[翻译]了解ASP.NET底层架构(完)
tmfc · 2006-09-04 · via 博客园 - tmfc

我说的这些对你来说够底层了吗?

-我们已经走完了整个请求处理过程了.这过程中有很多底层的信息,我对HTTP模块和HTTP处理器是怎么工作的并没有描述的非常详细.挖掘这些信息相当的费时间,我希望在了解了ASP.NET底层机制后,你能获得和我一样的满足感.

在结束之前让我们快速的回顾一下我在本文中讨论的从IIS到处理器(handler)的过程中,事件发生的顺序

  • IIS获得请求
  • 检查脚本映射中,此请求是否映射到aspnet_isapi.dll
  • 启动工作进程 (IIS5中为aspnet_wp.exe,IIS6中为w3wp.exe)
  • .NET运行时被载入
  • IsapiRuntime.ProcessRequest()被非托管代码调用
  • 为每个请求创建一个IsapiWorkerRequest
  • HttpRuntime.ProcessRequest()被工作进程调用
  • IsapiWorkerRequest对象为参数创建HttpContext对象
  • 调用HttpApplication.GetApplicationInstance()来从池中取得一个对象实例
  • 调用HttpApplication.Init()来开始管道事件并挂接模块和处理器
  • HttpApplicaton.ProcessRequest被调用以开始处理.
  • 管道中的事件被依次触发
  • 处理器被调,ProcessRequest函数被触发
  • 控制返回到管道中,后处理事件被依次触发

有了这个简单的列表,记住这些东西并把他们拼在一起就变得容易多了.我时常看看它来加深记忆.所以现在,回去工作,做一些不那么抽象的事情

虽然我都是基于ASP.NET1.1来进行讨论的,不过在ASP.NET2.0中这些处理过程看上去并没有发生太大的变化.