VS.NET(C#)提升-1.5_IIS7重要组件

从组件模型的角度来看,IIS包含了几个重要组件,分别是协议监听器(比如HTTP.sys)以及服务(比如万维网发布服务WWWService和Windows进程激活服务WAS)。

如下图所示:


        PS:图中服务 (WAS)被Windows进程激活, 为站点提供了使用 HTTP and HTTPS之外协议的能力。如TCP,可以使用其他技术,如WCF。

1,协议监听器

接收指定协议的请求,把他们发送给IIS处理,然后把响应结果返回给请求方。服务和程序除了能监听HTTP和HTTPS协议之外,还可以监听非HTTP协议,如TCP。

HTTP和HTTPS协议监听器--HTTP.sys(HTTP协议栈),是Windows操作系统网络子系统的一部分,作为内核模式设备驱动(kernel-mode device driver)实现的,其实是TCP之上的一个网络驱动程序。用于监听来自网络的HTTP的请求,把请求传送给IIS处理,并将处理结果返回给客户端浏览器。

严格地说,HTTP.SYS已经不属于IIS的范畴了,所以HTTP.SYS的配置信息并不保存在IIS的元数据库(Metabase),而是定义在注册表中。HTTP.SYS的注册表项位于下面的路径中:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/HTTP。

HTTP.SYS能够带来如下的好处:

①、持续监听:由于HTTP.SYS是一个网络驱动程序,始终处于运行状态,对于用户的HTTP请求,能够及时作出反应;

②、更好的稳定性:HTTP.SYS运行在操作系统内核模式下,并不执行任何用户代码,所以其本身不会受到Web应用、工作进程和IIS进程的影响;

③、内核模式下数据缓存:如果某个资源被频繁请求,HTTP.SYS会把响应的内容进行内核模式的缓存(不存在内核模式和用户模式的切换,响应速度将得到极大的改进),缓存的内容可以直接响应后续的请求。

2,万维网发布服务WWWService

以前由WWWService单独提供的功能,到了IIS7及以上版本中被分成了两个服务WWWServiceWAS。这两个服务在本地系统同一Svchost.exe进程上运行,并共享数据。

IIS7及以上版本中WWWService不再管理工作进程,它仅仅是HTTP.sys监听器的适配器,负责WASHTTP.sys之间的通信

其主要责任是配置HTTP.sys、当配置变化时更新HTTP.sys、当有请求进入请求队列时通知WAS。另外,还收集站点性能计数。

3,WAS

管理应用程序池和工作进程。WAS能让用户使用相同配置和处理模型去处理HTTP和非HTTP站点,如WCF的TCP协议,可以使用NetTcpActivator,它即是TCP协议监听器,又是TCP协议适配器。

因为Windows 进程激活服务通过删除对 HTTP 的依赖关系,可统一Internet 信息服务 (IIS) 进程模型

IIS 7.0通过使用非 HTTP 协议(比如TCP),以前只可用于 HTTP应用程序的 IIS 的所有功能现在都可用于运行 Windows Communication Foundation (WCF) 服务的应用程序。

IIS 7.0 还使用 Windows 进程激活服务通过 HTTP 实现基于消息的激活

权威参考:https://msdn.microsoft.com/zh-cn/library/bb470252(v=vs.100).aspx








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值