当您在运行 Windows Server 2003 的计算机上安装 ASP.NET 时,有两种进程模式供您选择。默认状况下,ASP.NET 使用 IIS 6.0 工作进程隔离模式。这种模式允许您配置应用程序池、回收工作进程、启用 Web 园功能、设置空闲超时和处理器关系,以及使用多种应用程序运行状况维护功能。在运行 Windows Server 2003 家族成员的计算机上,ASP.NET 应用程序应该使用工作进程隔离模式,除非遇到特定的兼容性问题。
但是请注意,当您的应用程序以工作进程隔离模式运行时,在计算机范围内的 Machine.config 文件中所创建的任何 <processModel> 元素的配置设置都将被忽略,下列三项设置除外:
<processModel> 元素配置了 IIS Web 服务器上的 ASP.NET 进程模式设置。<processModel> 部分只能在 Machine.config 文件内设置,并且它会影响所有在服务器上运行的 ASP.NET 应用程序。
要点 只有在工作进程隔离模式下运行时才能使用这些 IIS 6.0 功能。
timeout 属性指定了 ASP.NET 启动新的工作进程来取代当前工作进程所需要的时间(以分钟为单位)。默认设置为“无限”。Recycle worker processes 项设置为 120 分钟(如下所示),并且默认情况下启用该项。
要点 您必须是本地计算机上 Administrators 组的成员或者您必须被授予了相应的权限才能执行下列步骤。作为安全性的最佳操作,请使用不属于 Administrators 组的帐户登录计算机,然后使用运行方式命令以管理员身份运行 IIS 管理器。在命令提示符下,键入 runas /user:administrative_accountname "mmc %systemroot%\system32\inetsrv\iis.msc"。
使用 IIS 管理器配置 ASP.NET 属性 timeout
IIS 6.0 中的工作进程或应用程序池可以在保持指定的空闲时间后关闭。Shutdown worker process 项设置为 20 分钟,并且默认状况下启用该项。
使用 IIS 管理器配置 ASP.NET 属性 idleTimeout
shutdownTimeout 属性指定了工作进程完全关闭自身的时间值。时间用 hr:min:sec(小时:分钟:秒)字符串格式表示。工作进程的 Shutdown time limit 项设置为 90 秒,如下所示。
使用 IIS 管理器配置 ASP.NET 属性 shutdownTimeout
IIS 6.0 中的工作进程或应用程序池可以设置为在特定次数的请求之后回收。默认情况下,未启用该功能。
使用 IIS 管理器配置 ASP.NET 属性 requestLimit
requestQueueLimit 属性指定了允许的最大请求次数,等待工作进程在异常中断后启动时,这些请求会排列在 Internet 服务器 API (ISAPI) 中。请注意,此设置不能在完全关闭或正常回收的情况下应用。IIS 6.0 中的队列限制在内核中设置,默认情况下,设置为 1000。
使用 IIS 管理器配置 ASP.NET 属性 requestQueueLimit
在 IIS 6.0 工作进程隔离模式下,工作进程可以基于虚拟内存和物理内存回收。与 Machine.config 文件不同,内存限制不是百分比值,而是以兆字节度量的有限值。
默认情况下,不启用基于物理或虚拟内存的回收,但是如果选中的话,则默认值对于虚拟内存为 500 兆字节 (MB),对于物理内存为 192 MB。
使用 IIS 管理器配置 ASP.NET 属性 memoryLimit
webGarden 属性控制 Web 园模式,或多个密切相关的工作进程的使用。cpuMask 控制了进程的数量和 Web 园工作的方式。
webGarden 可以使用多进程,这意味着所有进程将具有自己的、诸如应用程序状态、进程中的会话状态、缓存和静态数据等副本。
使用 Web 园时,请记住以下事项:
Web 园也可以在 IIS 6.0 工作进程隔离模式下设置,其方法是将每个应用程序池的最大工作进程数量从 1 增加到 n (根据需要)。
配置 ASP.NET 属性 webGarden 和 cpuMask
userName 属性允许工作进程采用不同于默认进程标识的 Windows 标识运行。默认状况下,此属性为空,进程以 IIS 标识运行。如果有效的证书出现在 userName 和 password 属性中,则进程以给定的帐户运行。如果出现,这些属性会使工作进程按配置的 Windows 标识运行。默认情况下属性值为空。在工作进程隔离模式下,默认以“网络服务”帐户运行。但是,可以将它们设置成如下的可配置帐户。
配置 ASP.NET 属性 userName 和 password
要点 当使用可配置的帐户为应用程序池配置工作进程标识时,必须将创建的帐户添加到 IIS_WPG 组中以便工作进程能够运行。
pingFrequency 属性是标准进程模式格式 (hr:min:sec) 的时间间隔。默认值为 30 秒。pingTimeout 属性是标准进程模式格式 (hr:min:sec) 的时间间隔。默认值为 5 秒。
在 IIS 6.0 工作进程隔离模式中,默认情况下启用 ping。pingFrequency 的默认值为工作进程响应之后 30 秒。pingTimeout 的等同设置为
配置 ASP.NET 属性 pingFrequency 和 pingTimeout