请求的
英文原文:Beginner’s Guide: How IIS Process Request
前言
每次服务器接受到请求,都要先经IIS处理。,仅仅是关于IIS操作的。在我们开始之前,先了解这些会有助于对全文的理解,同时欢迎反馈和建议。什么是Web Server?
网站时,引擎会响应各种请求,这个引擎的名字叫“”。
当我们配置一个Web程序时,总会涉及到一个词“Web Server”,它的功能便是会响应所有请求。
什么是IIS?
IIS( Information Server)是微软Web Server的一种,站点。处理引擎来处理请求,因此,当一个请求到达时,IIS接收并处理请求,然后返回内容。
请求处理过程
现在,你应能搞清楚Web Server和IIS的区别。现在我们来看一下核心部分。在继续之前,你需要搞清两个概念:
1、工作进程(Worker Process)
2、应用程序池(Application Pool)
工作进程:在IIS中,工作进程()应用程序,管理并响应所有的请求,关的信息。简而言之,工作进程就是
程序的心脏。
应用程序池:应用程序池是工作进程的容器,通常用来隔开不同配置的工作进程。当一个程序出错或进程资源回收时,其他池中的程序不会受到影响。
注:当一个应用程序池包含多个工作进程时,被叫做“Web Garden”。
如果我们看一下IIS ,就会发现,可以把它分成两部分:
1、内核模块(Kernel Mode)
2、用户模块(User Mode)
内核模式是从IIS ,,每当请求进来时,会首先触发该文件的响应。
。?当然不是随机抽取,每当创建一个应用程序池,,因此该文件才能确定将请求往哪传。
以上便是IIS处理请求的第一步。接着,。在IIS的用户模块中,通过Web Admin Services (WAS),并传入相应的应用程序池中。
当应用程序池接收到请求,会接着传给工作进程(),该进程检查来请求的URL后缀以确定加载哪个ISAPI扩展。加载时会附带自己的ISAPI扩展(),以便在IIS中映射。
注意:,然后再安装IIS,就需要通过
中的ISAPI扩展。
, 就会构造一个HttpRuntime类,该类是应用程序的入口,通过ProcessRequest方法处理请求。
一旦这个方法被调用,一个HttpContext的实例就产生了。,且该实例会在整个生命周期中存活,我们通过它可以获取到一些常用对象,如Request,Response,Session 等。
之后HttpRuntime会通过HttpApplicationFactory类加载一
请求的 来自淘豆网m.daumloan.com转载请标明出处.