IIS 6.0 在被称为应用程序隔离模式(隔离模式)的两种不同操作模式下运行,它们是:工作进程隔离模式和 IIS 5.0 隔离模式。这两种模式都要依赖于 HTTP.sys 作为超文本传输协议 (HTTP) 侦听程序;然而,它们内部的工作原理是截然不同的。
工作进程隔离模式利用 IIS 6.0 的重新设计的体系结构并且使用工作进程的核心组件。IIS 5.0 隔离模式用于依赖 IIS 5.0 的特定功能和行为的应用程序。该隔离模式由
您所选择的 IIS 应用程序隔离模式对性能、可靠性、安全性和功能可用性都会产生影响。工作进程隔离模式是 IIS 6.0 操作的推荐模式,因为它为应用程序提供了更可靠的平台。工作进程隔离模式也提供了更高级别的安全性,因为运行在工作进程中的应用程序的默认标识为 NetworkService。
以 IIS 5.0 隔离模式运行的应用程序的默认标识为 LocalSystem,该标识允许访问并具有更改计算机上几乎所有资源的能力。
虽然工作进程隔离模式提供了增强的隔离性、可靠性、可用性和性能,但某些应用程序在以该模式运行时仍可能会有兼容性的问题。如果遇到了兼容性问题,请使用 IIS 5.0 隔离模式。
当决定要使用哪种隔离模式时,请考虑下列情况:
注意 IIS 6.0 无法同时运行两种应用程序隔离模式。因此,在同一台 IIS 服务器上,不可能以工作进程隔离模式运行某些 Web 应用程序而以 IIS 5.0 隔离模式运行其他应用程序。如果要有需要单独模式的应用程序,必须在单独的计算机上运行它们。
本主题包含下列信息:
工作进程隔离模式利用了所有新的 IIS 6.0 核心组件。使用工作进程隔离模式启用应用程序池、回收和运行状况检测功能,在本主题的后面将对这些功能进行描述。
下图说明了以工作进程隔离模式运行的 IIS 6.0 体系结构。
在上图中,可以看到仅将应用程序特定代码加载到工作进程中。应用程序特定代码的示例是 ASP 和 ASP.NET 应用程序,因为这些编程平台的运行时引擎都是作为 Internet 服务器 API (ISAPI) 扩展来实现的。
这种体系结构使得 IIS 非常可靠,因为不管在工作进程中发生了什么服务中断,万维网发布服务(WWW 服务)、IIS 管理服务和 HTTP.sys 都能不受其影响并且连续运行。同样,运行在工作进程中的网站也不受运行在其他工作进程中的故障影响,因为它们通过进程边界彼此相互隔离。
下面的步骤说明了如何以工作进程隔离模式处理请求:
IIS 5.0 隔离模式确保为 IIS 5.0 而开发的应用程序的兼容性。以 IIS 5.0 隔离模式运行的 IIS 6.0 请求处理与在 IIS 5.0 下的请求处理几乎完全相同。在 IIS 5.0 隔离模式中,应用程序池、回收和运行状况检测功能都不可用。
下图说明了以 IIS 5.0 隔离模式运行的 IIS。
在 IIS 5.0 隔离模式中,HTTP.sys 以在工作进程隔离模式中相同的方式使用。唯一的例外是它仅把请求传递到由 WWW 服务维护的单个请求队列中。根据隔离模式的配置情况 - 在进程内、在池中或者在进程外 - 请求将会在 Inetinfo.exe 或 DLLHost.exe 中进行处理。
使用下表作为参考,来理解在 IIS 5.0 隔离模式和工作进程隔离模式中的 IIS 6.0 功能的角色。
IIS 功能 | IIS 5.0 隔离模式 宿主/组件 | 工作进程隔离模式 宿主/组件 |
---|---|---|
工作进程管理 | N/A | Svchost.exe/WWW 服务 |
工作进程 | N/A | W3wp.exe/工作进程 |
运行进程内 ISAPI 扩展 | Inetinfo.exe | W3wp.exe |
运行进程外 ISAPI 扩展 | DLLHost.exe | N/A(所有的 ISAPI 扩展都在进程内) |
运行 ISAPI 筛选器 | Inetinfo.exe | W3wp.exe |
HTTP.sys 配置 | Svchost.exe/WWW 服务 | Svchost.exe/WWW 服务 |
HTTP 协议支持 | Windows 内核/HTTP.sys | Windows 内核/HTTP.sys |
IIS 配置数据库 | Inetinfo.exe | Inetinfo.exe |
FTP | Inetinfo.exe | Inetinfo.exe |
NNTP | Inetinfo.exe | Inetinfo.exe |
SMTP | Inetinfo.exe | Inetinfo.exe |
当在一台没有安装早期版本 IIS 的计算机上安装 IIS 6.0 时,隔离模式会自动设置为工作进程隔离模式。如果从 IIS 的早期版本进行升级,隔离模式则会设置为 IIS 5.0 隔离模式。
下表指定了安装 IIS 6.0 时的默认隔离模式设置。
安装 | 隔离模式 |
---|---|
新安装 IIS 6.0 | 工作进程隔离模式 |
从 IIS 6.0 的早期版本进行升级 | 隔离模式没有改变 |
从 IIS 5.0 升级 | IIS 5.0 隔离模式 |
从 IIS 4.0 升级 | IIS 5.0 隔离模式 |
安全套接字层 (SSL) 请求是加密的,内核模式 HTTP 服务缺乏解密请求或对加密进行响应的能力。用户模式服务 HTTP 筛选器有效地解决了这个问题,该筛选器专门用来解密 SSL 请求并加密返回。HTTP 筛选器服务以两种 IIS 操作模式运行,如下所示:
© 1997-2003 Microsoft Corporation。保留所有权利。