托管管道模式php500,IIS6、IIS7和IIS8不同版本之间的区别

一、前言

目前市面上所用的IIS版本估计都是>=6.0的.所以我们主要以下面三个版本进行讲解:

842189c3982cd9082d146f6a7b532995.png

二、IIS6的请求过程

424763a3549e5f915b4f1304b7cdbc83.png

由图可知,所有的请求会被服务器中的http.sys组件监听到,它会根据IIS中的Metabase查看基于该Request的Application属于哪个ApplicationPool,如果该ApplicationPool不存在,则创建之。否则直接将Request发到对应ApplicationPool的Queue中。

每个ApplicationPool对应着一个WorkerProcess:w3wp.exe。在IISMetabase中维护着ApplicationPool和w3wp的映射。WAS(WebAdministrativeservice)根据这样一个mapping,将存在于某个ApplicationPoolQueue的request传递到对应的workerprocess(如果没有,就创建这样一个进程)。在workerprocess初始化的时候,加载ASP.NETISAPI。

同时,在w3wp.exe的内部,ASP.NET是以IISISAPIextension的方式外加到IIS(其实包括ASP以及PHP,也都以相同的方式配置),ASP.NETISAPI进而加载CLR。从而为ASP.NETApplication创建一个托管的运行环境,在CLR初始化的使用会加载两个重要的dll:AppManagerAppDomainFactory和ISAPIRuntime。通过AppManagerAppDomainFactory的Create方法为Application创建一个ApplicationDomain;通过ISAPIRuntime的ProcessRequest处理Request,进而将流程拖入到ASP.NETHttpRuntimePipeline的范畴。

注:ISAPI,意思:互联网服务器应用程序接口(InternetServerApplicationProgramInterface)。

三、IIS7的工作过程

1、HTTP.sys监听拦截客户端请求开始处理。

2、HTTP.sys通过配置信息联系WAS获取相关信息。

3、WAS向配置存储中心请求配置信息。applicationHost.config。

4、WWW服务接受到配置信息,配置信息指类似应用程序池配置信息,站点配置信息等等。

5、WWW服务使用配置信息去配置HTTP.sys处理策略。

6、WAS为这个请求对应的应用程序池(ApplicationPool)开启W3WPWorkerProcess。

W3WPWorkerProcess处理以后,将Response返回给HTTP.sys。

客户端接受到Response内容。

注意:我们称3-6为初始化配置的过程,配置完毕之后,以后的请求就直接到第七步.当然IIS被重启了,就重头来过。

bd1088bb1b5e04b03787dd73b7686afc.png

三、IIS7程序池托管管道模式

W3WP.exe进程在IIS7中如何工作,取决于IIS7的应用程序池托管管道模式是什么,IIS7目前有2个模式:经典模式和集成模式。

经典的意思大家都知道,就是一个一直以来所使用的方式(便于大家记忆),IIS7其中经典模式的W3WP.exe工作方式就是IIS6的处理方式。

即:IISISAPIextension,也就是aspnet_isapi.dll

IIS7集成模式是一个伟大的改进,让IIS集成了.NET功能(不在依靠之前IIS版本的aspnet_ISPAI.DLL),也就是说所有的HTTPRequest请求都要经过.NET来处理(包括html,php等),也因为.NET的诸多功能已经成为IIS7的一部份.性能上也得到了提升。

四、IIS8和IIS7有哪些不一样的地方

1、IIS8.0只能运行于>=WindowsServer2012andWindows8的平台上;

2、IIS8.0Application的初始化被包括在IIS8.0中.IIS7.5Application初始化(RC)被作为一个外带模块;

3、IIS8.0管理工具已经为ASP.net4.5功能更新.IIS7.5中还没有;

4、IIS8.0集成了SSL认证支持.IIS7.5还没有;

5、IIS8.0CPU节流已经得到更新且包括额外的节流选项,而IIS7.5还没有变化;

6、IIS8.0集成了动态IP地址限制功能

7、IIS8.0集成了FTP尝试登陆限制功能.

8、IIS8.0在NUMA上的多核扩展。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值