IIS健全应用程序池设置 @阿良.NET(转载)

通过回收应用程序池设置,可以控制如何恢复系统资源。以下几节介绍如何指定回收应用程序池设置。


指定回收应用程序池设置

回收应用程序池设置是在应用程序池的属性对话框的“回收”选项卡中指定的。

设置回收应用程序池设置 
  1. 打开 IIS 管理控制台,单击加号展开本地计算机。 
  2. 单击加号展开“应用程序池”文件夹。 
  3. 右击适当的应用程序池,然后单击“属性”。出现应用程序池的属性对话框。 
  4. 单击“回收”选项卡,然后设置适当的应用程序池设置。 
  5. 应用程序池“属性”对话框的“回收”选项卡

应用程序池“属性”对话框的“回收”选项卡
单击显示全图,Ctrl+滚轮缩放图片

内存回收

“内存回收”是等效于 memoryLimit ASP.NET 进程模型设置的应用程序池设置。它指定辅助进程可以使用的最大内存量。如果辅助进程超出了这一数量,将创建新的进程来替换它,并且当前所有请求都被重新分配给该新进程。在 memoryLimit ASP.NET 进程模型设置与“内存回收”应用程序池设置之间有两个重要的区别:
  • memoryLimit ASP.NET 进程模型设置只使用物理内存。“内存回收”应用程序池设置允许您为物理内存和虚拟内存分别指定限制。由于公共语言运行库的垃圾回收器工作的方式,物理内存(或物理内存和虚拟内存的组合)常用于 ASP.NET 应用程序。虚拟内存常用于将堆划分为多个片断的传统本机应用程序。 
  • “内存回收”应用程序池设置是按兆字节 (MB) 指定的,而不是按相对于总内存的百分比指定的。


回收辅助进程

“回收辅助进程”是等效于 requestLimit ASP.NET 进程模型设置的应用程序池设置。它指定导致辅助进程或应用程序池被回收的请求的数目。默认情况下“回收辅助进程”是禁用的。若要启用“回收辅助进程”,请选取该复选框并在数值调节框中指定请求数。


回收多个辅助进程

“回收多个辅助进程”是等效于 timeout ASP.NET 进程模型设置的应用程序池设置。它指定回收辅助进程或应用程序池的时间间隔。默认情况下“回收多个辅助进程”是启用的而且设置为 120 分钟。通过更改数值调节框中的值,可以指定一个不同的时间间隔。若要禁用“回收多个辅助进程”,请清除该复选框。

性能应用程序池设置
通过性能应用程序池设置,可以控制辅助进程的操作。以下几节描述如何指定性能应用程序池设置。

指定性能应用程序池设置
性能应用程序池设置是在应用程序池的属性对话框的“性能”选项卡中指定的。

设置性能应用程序池设置
  1. 打开 IIS 管理控制台,单击加号展开本地计算机。 
  2. 单击加号展开“应用程序池”文件夹。 
  3. 右击适当的应用程序池,然后单击“属性”。出现应用程序池的属性对话框。 
  4. 单击“性能”选项卡,然后设置适当的应用程序池设置。

应用程序池“属性”对话框的“性能”选项卡
单击显示全图,Ctrl+滚轮缩放图片


网络园

“网络园”是等效于 webGarden 和 cpuMask ASP.NET 进程模型设置的应用程序池设置。若要启用“网络园”,请将“辅助进程的最大数目”设置为高于 1 的值。该值还为应用程序池确定最大进程数。

因为网络园支持使用多个进程,所以,每一进程在应用程序状态、进程内会话状态、缓存和静态数据方面都有其自己的副本。网络园不应用于所有应用程序,尤其在这些应用程序需要维护状态的情况下。在决定网络园模式是否适用前,一定要检查应用程序的性能。

在使用网络园时,理解会话状态和循环工作的方式是十分重要的。考虑其他应用程序池设置影响应用程序的方式也是十分重要的。


使用辅助进程隔离模式的网络园中的会话状态

在使用会话状态时,请注意,辅助进程隔离模式不支持将请求传送回引起请求返回的进程。当一个应用程序运行在处于 ASP 会话状态或应用程序状态的网络园中时,该应用程序需要将其请求发送回发起的进程。在使用 IIS 6.0 应用程序池时,要确保应用程序让一个连接总保持为打开状态,以便其请求被发送回适当的进程。如果此连接没有保持为打开状态,则请求将被发送到为网络园提供服务的下一可用的辅助进程。


使用辅助进程隔离模式的网络园中的循环

循环是一种用于应用程序的负载平衡方法。在每个请求到达时,它会自动被发送到下一可用进程。例如,如果网络园具有 4 个进程,则请求被发送到进程 0、1、2 和 3,并依照这一顺序发送。然后为其他请求重复该循环。


使用辅助进程隔离模式的网络园中的应用程序池参数
应用程序池设置行为
AppPoolQueueLength 此参数的值不受影响。但是,请求是通过在所有为网络园提供服务的辅助进程上循环而分发的。
DisallowOverlappingRotation 网络园中没有行为更改。
DisallowRotationOnConfigChange 网络园中没有行为更改。
IdleTimeout 为每一进程独立计算,这样各进程的超时可以彼此独立。根据所选择的路由算法,将自动配置要加载的进程的数目。
LoadBalancerCapabilities 网络园中没有行为更改。
OrphanAction 网络园中没有行为更改。
OrphanWorkerProcess 网络园中没有行为更改。
PeriodicRestartTime 此参数的含义在网络园中发生了变化。在网络园中,此参数指定回收所有进程的时间间隔。进程在指定时间长度内以平均的时间间隔轮流回收。例如,如果网络园具有四个进程并且 PeriodicRestartTime 被设置为 20 小时,则在 5 小时后回收第一个进程,在 10 小时后回收第二个进程,依此类推。
注意如果进程崩溃,则向替代进程提供 PeriodicRestartTime 的运行时值。这使得崩溃的进程可以在指定的 PeriodicRestartTime 内与其他进程一起回收。
PeriodicRestartRequests 此参数的含义在网络园中发生了变化。在网络园中,此参数指定在达到某一请求数目后回收所有进程。进程在指定的请求数目内按平均时间间隔轮流回收。例如,如果网络园具有四个进程并且 PeriodicRestartRequests 设置为 40,000 个请求,则第在 10,000 个请求后回收一个进程,在 20,000 个请求后回收第二个进程,依此类推。在回收了第一组进程后,将向下一组进程指派 40,000 这一 PeriodicRestartRequests 值。
PeriodicRestartSchedule 网络园中没有行为更改。如果管理员决定使用基于时间表的回收,则同时回收所有网络园进程。
PingInterval 网络园中没有行为更改。
PingResponseTime 网络园中没有行为更改。
PingingEnabled 网络园中没有行为更改。
RapidFailProtection 网络园中没有行为更改。例如,在一段时间间隔内计算整个网络园的失败总数然后进行比较。这提供了额外的恢复能力。
RapidFailProtectionInterval 网络园中没有行为更改。例如,在一段时间间隔内计算整个网络园的失败总数然后进行比较。这提供了额外的恢复能力。
RapidFailProtectionMaxCrashes 网络园中没有行为更改。例如,在一段时间间隔内计算整个网络园的失败总数然后进行比较。这提供了额外的恢复能力。
SMPAffinitized 网络园中没有行为更改。
SMPProcessorAffinityMask 在 IIS 5.0 隔离模式中,您只能具有与 CPU 的数目一样多的辅助进程。在辅助进程隔离模式中,多个 CPU 可用于单个辅助进程。
ShutdownTimeLimit 网络园中没有行为更改。
StartupTimeLimit 网络园中没有行为更改。


某些应用程序池设置具有特定于网络园的行为。下表总结了这些行为

空闲超时

“空闲超时”是等效于 idleTimeout ASP.NET 进程模型设置的应用程序池设置。它指定辅助进程或应用程序池在开始处于不活动状态后,过多长时间将其关闭。默认情况“空闲超时”是启用的而且设置为 20 分钟。通过更改数值调节框中的值,可以指定一个不同的时间限制。若要禁用“空闲超时”,请清除该复选框。


请求队列限制

“请求队列限制”是等效于 restartQueueLimit ASP.NET 进程模型设置的应用程序池设置。它指定在异常终止后等待辅助进程启动时在 ASP.NET ISAPI 中排队的请求的最大数目。默认情况下“请求队列限制”是启用的而且设置为 1000 个请求。通过更改数值调节框中的值,可以对排队的请求的数目指定不同的限制。若要禁用“请求队列限制”,请清除该复选框。


健全应用程序池设置

通过健全应用程序池设置,您可以控制为获得正确功能而监视辅助进程的方式。以下几节描述如何指定健全应用程序池设置。


指定健全应用程序池设置

这些回收应用程序池设置是在应用程序池的属性对话框的“健全”选项卡中指定的。

设置健全应用程序池设置 
  1. 打开 IIS 管理控制台,单击加号展开本地计算机。 
  2. 单击加号展开“应用程序池”文件夹。 
  3. 右击适当的应用程序池,然后单击“属性”。出现应用程序池的属性对话框。 
  4. 单击“健全”选项卡,然后设置适当的应用程序池设置。 
  5. 应用程序池“属性”对话框的“健全”选项卡

应用程序池“属性”对话框的“健全”选项卡
单击显示全图,Ctrl+滚轮缩放图片


启用 Ping

“启用 ping”是等效于 pingFrequency ASP.NET 进程模型设置的应用程序池设置。它指定 ASP.NET ISAPI 检查辅助进程是否存在的时间间隔。如果没有辅助进程,则重新启动辅助进程。默认情况下“启用 ping”是启用的而且设置为 30 秒。通过更改数值调节框中的值,可以指定一个不同的时间间隔。若要禁用 ping 操作,请清除“启用 ping”复选框。


关闭时间限制

“关闭时间限制”是等效于 shutDownTimeout ASP.NET 进程模型设置的应用程序池设置。它指定提供给辅助进程的用来正常关闭的时间长度。如果辅助进程在指定的时间长度内没有关闭,则 ASP.NET ISAPI 将结束该辅助进程。默认情况下“关闭时间限制”设置为 90 秒。通过更改数值调节框中的值,可以指定一个不同的时间限制。


标识应用程序池设置

通过标识应用程序池设置,可以指定辅助进程使用的帐户。默认情况下,辅助进程使用“网络服务”(Network Service) 帐户。不过,您可以重写此帐户并指定其他的 Windows 标识。以下几节描述如何指定标识应用程序池设置。


指定标识应用程序池设置

这些回收应用程序池设置是在应用程序池的属性对话框的“标识”选项卡中指定的。

设置标识应用程序池设置 
  1. 打开 IIS 管理控制台,单击加号展开本地计算机。 
  2. 单击加号展开“应用程序池”文件夹。 
  3. 右击适当的应用程序池,然后单击“属性”。出现应用程序池的属性对话框。 
  4. 单击“标识”选项卡,然后设置适当的应用程序池设置。 
  5. 应用程序池“属性”对话框的“标识”选项卡

应用程序池“属性”对话框的“标识”选项卡
单击显示全图,Ctrl+滚轮缩放图片


用户名和密码

“用户名”和“密码”分别是等效于 username 和 password ASP.NET 进程模型设置的应用程序池设置。这两种设置结合使用来使辅助进程使用指定的 Windows 标识运行。默认情况下,辅助进程使用“网络服务”(Network Service) 帐户。但是,如果选择了“可配置”单选按钮并且“用户名”和“密码”文本框包含有效值,则辅助进程将使用指定的 Windows 标识。此外,必须将 Windows 标识添加到 IIS_WPG 用户组。


将 Windows 标识添加到 IIS_WPG 用户组 
  1. 在“开始”菜单上,右击“我的电脑”,然后单击“管理”。 
  2. 通过右击加号展开“本地用户和组”节点。 
  3. 单击“组”文件夹。在右窗格中将列出在该计算机上定义的所有组的列表。 
  4. 右击“IIS_WPG”,然后单击“添加到组”。 
  5. 单击“添加”按钮并输入要用于辅助进程的帐户
posted @ 2010-11-12 15:28  Daniel_Lu  阅读(398)  评论(0编辑  收藏  举报