IIS应用程序池设置

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


指定回收应用程序池设置

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

设置回收应用程序池设置 
  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、一、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. 单击“添加”按钮并输入要用于辅助进程的账户