IIS 之 应用程序池
IIS(Internet Information Services),由于我使用的是Windows10系统,所以本文以其内置 10.0.14393.0 版本说明。
应用程序池 → 右键(待设置应用程序池)→ 高级设置,如下图:
1、常规,如下图:
1.1 .NET CLR 版本
[managedRuntimeVersion] 配置应用程序池,以加载特定版本的 .NET CLR。选定的 CLR版本应与应用程序所使用的相应版本的 .NET Framework 对应。选择“无托管代码”将导致所有的 ASP.NET 请求失败。
[1] v4.0 或 V2.0 ; [2] 无托管代码;
1.2 队列长度
[queueLength] HTTP.sys 将针对应用程序池排队的最大请求数。如果队列已满,新请求将收到 503“服务不可用”的响应。默认队列长度设置是1000,范围在10-65535 之间。
1.3 名称
[name] 应用程序池名称是应用程序池的唯一标识符。
1.4 启动模式
[startMode] 将应用程序池配置为在按需运行模式或始终运行模式下运行。
[1] OnDemand;[2]AlwaysRunning;
1.5 启用 32 位应用程序
[enable32BitAppOnWin64] 如果针对 64 位操作系统上的应用程序池将该属性设为 True,则为应用程序池提供服务的工作进程将处于 WOW64 (Windows on Windows64)模式。WOW64模式下的进程是仅加载 32 位应用程序的 32 位进程。
1.6 托管管道模式
[managedPipelineMode] 将 ASP.NET 配置成作为 ISAPI 扩展并以经典模式来运行。在后一种情况下,托管代码集成到请求处理管道中。
[1] Classic;[2] Integrated;
2、CPU,如下图:
2.1 处理器关联掩码
[smpProcessorAffinityMask] 强制此应用程序池的工作进程在特定 CPU 上运行的十六进制掩码。如果启用了处理器关联,则值 0 将导致错误。
2.2 处理器关联掩码(64位选项)
[smpProcessorAffinityMask2] 为64位计算机制定强制此应用程序池的工作进程在特定 CPU 上运行的高顺序 DWORD 十六进制掩码。在 64 位计算机上,smpProcessorAffinityMask 特性包含处理器掩码的低顺序 DWORD ,而 smpProcessorAffinityMask2 特性包含处理器掩码的高顺序 DWORD。
2.3 限制(百分比)
[limit] 配置允许应用程序池中的工作进程在" CPU 限制间隔 "属性指示的时间段内使用的 CPU 时间的最大百分比。如果超过“ CPU 限制 ”属性设置的限制,系统将向事件日志写入一个事件,并且可能触发一组可选事件(由“CPU 限制操作”属性决定)。如果将此属性的值设为 0 ,将禁止将工作进程限制为 CPU 时间的百分比。
2.4 限制操作
[action] 如果设置为"NoAction",将生成一个事件日志条目。如果设置为“KillW3WP”,则将在重设间隔期间关闭应用程序池并生成一个事件日志条目。如果设置为“ Throttle ”,则 CPU 使用率将限制为限制中设置的值。不使用限制间隔,并且生成一个事件日志条目。如果设置为“ ThrottleUnderLoad ”,则只有在争用 CPU 时,才限制 CPU 使用率。不使用限制间隔,并且生成一个事件日志条目。
[1] NoAction; [2] KillW3WP; [3] Throttle; [4] ThrottleUnderLoad;
2.5 限制间隔(分钟)
[resetInterval] 指定用于应用程序池的 CPU 监视和限制的重设期限(以分钟为单位)。如果自上次进程计帐重设以来所经过的分钟数等于此属性指定的分钟数,IIS 将重设日志和限制间隔的 CPU 计时器。将此属性的值设为 0 将禁用 CPU 监视。
2.6 已启用处理器关联
[smpAffinitized] 如果设为 True ,“处理器关联掩码”属性会强制为此应用程序池提供服务的工作进程在特定的 CPU 上运行。这样便可以在多处理服务器中有效使用 CPU 缓存。
3、回收,如下图:
3.1 发生配置更改时禁止回收
[disallowRotationOnConfigChange] 如果为 True,应用程序池在发生配置更改时将不会回收。
3.2 固定时间间隔(分钟)
[time] 一个时间段(以分钟为单位),超过该时间后,应用程序池将回收。值为 0 意味着应用程序池不会按固定间隔回收。
3.3 禁止重叠回收
[disallowOverlappingRotation] 如果为 True ,将发生应用程序池回收,以便在创建另一个工作进程之前退出现有工作进程。如果工作进程加载不支持多个实例的应用程序,请将该属性设为True。
3.4 请求限制
[requests] 应用程序池在回收之前可以处理的最大请求数。如果值为0,则表示应用程序池可以处理的请求数没有限制。
3.5 生成回收事件日志条目
[logEventOnRecycle] 每发生一次指定的回收事件时便生成一个事件日志条目。
3.5.1 ISAPI 报告了非正常状态
[IsapiUnhealthy] 如果为True,则当应用程序池由于 ISAPI 扩展将其自身报告为非正常而进行回收时,系统将生成一个事件日志条目。
3.5.2 超出请求限制
[Requests] 如果为 True,则当应用程序池在超出其请求限制后进行回收时,系统将生成一个事件日志条目。
3.5.3 超出虚拟内存限制
[Memory] 如果为True,则当应用程序池在超出其虚拟内存限制后进行回收时,系统将生成一个事件日志条目。
3.5.4 固定时间间隔
[Time] 如果为True,则当应用程序池按计划的间隔进行回收时,系统将生成一个事件日志条目。
3.5.5 手动回收
[OnDemand] 如果为True,则当手动回收应用程序池时,系统将生成一个事件日志条目。
3.5.6 特定时间
[Schedule] 如果为True,则当应用程序池在计划的时间进行回收时,系统将生成一个事件日志条目。
3.5.7 已超出专用内存限制
[PrivateMemory] 如果为True,则当应用程序池在超出其专用内存限制后进行回收时,系统将生成一个事件日志条目。
3.5.8 应用程序池配置已更改
[ConfigChange] 如果为True,则当应用程序池由于其配置发生更改而回收时,系统将生成一个事件日志条目。
3.6 特定时间
[schedule] 应用程序池进行回收的一组特定的本地时间(24小时制)。
3.7 虚拟内存限制(KB)
[memory] 工作进程可以使用的最大虚拟内存量(以 KB 为单位),超过此内存量,将导致应用程序池回收。如果值为 0 ,则表示没有限制。
3.8 专用内存限制(KB)
[privateMemory] 工作进程可以使用的最大专用内存量(以 KB 为单位),超出此内存量,将导致应用程序池回收。如果值为0,则表示没有限制。
4、进程孤立,如下图:
4.1 可执行文件
[orphanActionExe] 当工作进程被废弃(孤立)时运行的可执行文件。例如,“C:\dbgtools\ntsd.exe”将调用 NTSD 来调试工作进程故障。
4.2 可执行文件参数
[orphanActionParams] 当工作进程被废弃(孤立)时所运行的可执行文件的参数。例如,如果 NTSD 是为调试工作进程故障而调用的可执行文件,则“-g -p %1%”适用。
4.3 已启用
[orphanWorkerProcess] 如果设为True ,则无响应的工作进程将被废弃(孤立),而不是终止。可以使用此功能来调试工作进程故障。
5、进程模式,如下图:
5.1 Ping 间隔(秒)
[pingInterval] 两次向为此应用程序池提供服务的工作进程发送健康状况监视 ping 所间隔的时间段(以秒为单位)。
5.2 Ping 最大响应时间(秒)
[pingResponseTime] 为工作进程指定的、响应健康状况监视 ping 的最长时间(以秒为单位)。如果工作进程不响应,将被终止。
5.3 标识
[identityType, username, password] 配置应用程序池以作为内置账户或特定的用户标识运行,内置账户也就是“应用程序池标识”(推荐)、“网络服务”、“本地系统”、“本地服务”。
5.4 关闭时间限制(秒)
[shutdownTimeLimit] 为工作进程指定的、完成处理请求并关闭的时间段(以秒为单位)。如果工作进程超过关闭的时间限制,将被终止。
5.5 加载用户配置文件
[loadUserProfile] 此设置指定 IIS 是否为应用程序池标识加载用户配置文件。当此值为 True 时,IIS为应用程序池标识加载用户配置文件。如果您需要像 IIS 6.0 那样不为应用程序池标识加载用户配置文件,则此值设置为 false。
5.6 空闲超时操作
[idleTimeoutAction] 达到空闲超时持续时间后要执行什么操作。
5.7 启动时间限制(秒)
[startupTimeLimit] 为工作进程指定的、启动并进行初始化的时间段(以秒为单位)。如果工作进程初始化时间超过启动时间限制,将被终止。
5.8 启用 Ping
[pingingEnabled] 如果为 True,系统将定期对为此应用程序池提供服务的工作进程执行ping 操作,以确保这些工作进程仍及时响应。此过程称为健康状况监视。
5.9 生成进程模型时间日志条目
[logEventOnProcessModel] 为每次发生的指定进程模型事件生成一个事件日志条目。
5.9.1 空闲超时已到
[IdleTimeout] 如果为 True,则当应用程序池在超出其空闲时限制后关闭时,系统将生成一个事件日志条目。
5.10 闲置超时(分钟)
[idleTimeout] 工作进程在关闭之前可以保持闲置状态的时间(以分钟为单位)。如果某个工作进程既未处理请求,也未收到任何新的请求,则将进入闲置状态。
5.11 最大工作进程数
[maxProcesses] 可用来处理对应程序池的请求的最大工作进程数。如果此数字大于 1,则应用程序池为“Web 园”。在 NUMA 感知系统上,如果此数字为 0,则为获得最佳性能,IIS 将启动与 NUMA 节点一样多的工作进程。
6、快速故障防护,如下图:
6.1 “服务不可用”响应类型:
[LoadBalancerCapabilities] 如果设为 HttpLevel,那么当应用程序池停止时, HTTP.sys 将返回 HTTP 503 错误。如果设为 TcpLevel,HTTP.sys 将重置连接。如果负载平衡器识别其中一种响应类型,并随后重定向该类型,则此设置非常有用。
6.2 故障间隔(分钟)
[rapidFailProtectionInterval] 应用程序池发生指定数量的工作进程崩溃(最大故障数)的最短时间间隔(以分钟为单位)。如果低于此间隔,应用程序池将被快速故障防护功能关闭。
6.3 关闭可执行文件
[autoShutdownExe] 当应用程序池被快速故障防护功能关闭时所运行的可执行文件。可以使用它来配置负载平衡器,将此应用程序池的通信重定向至其他服务器。
6.4 关闭可执行文件参数
[autoShutdownParams] 当应用程序池被快速故障防护功能关闭时运行的可执行文件的参数。
6.5 已启用
[rapidFailProtection] 如果设为 True,则当在指定的时间段(故障间隔)内出现指定数量的工作进程崩溃(最大故障数)的情况时,应用程序池将被关闭。默认情况下,如果在5分钟的间隔内发生5次崩溃,应用程序池将被关闭。
6.6 最大故障数
[rapidFailProtectionMaxCrashes] 应用程序池被快速故障防护功能关闭之前允许的最大工作进程崩溃数。
IIS 之 应用程序池的更多相关文章
- IIS 7 应用程序池自动回收关闭的解决方案
如果你正在做ASP.NET,那肯定会用到IIS 如果你想在ASP.NET Application中加入某个定时任务,那想必一定是用一个线程在不停地做定时计算 那假设我们在自己的ASP.NET应用程序中 ...
- IIS7.5 用 IIS AppPool\应用程序池名 做账号 将各站点权限分开
IIS6里面,要把服务器上的各站点权限分开,要建一堆帐号,再一个一个站点绑定.IIS7.5就不用了. 选择 "应用程序用户" 选择 "应用程序用户",启动应用程 ...
- 程序导致IIS服务器应用程序池停止
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA0sAAAC6CAIAAADwAEEAAAAQMElEQVR4nO3dz4scV2IH8Ma7EB9CQC
- 【zabbix】Windows服务器获取IIS站点以及程序池状态
在使用zabbix做Windows服务器监控的时候遇到一个比较棘手的问题,检测IIS站点状态. 普通情况下,只要用浏览器访问iis站点测试一下返回码是不是200即可判断状态,但是我这次遇到的是iis使 ...
- IIS将应用程序池配置为在计划时间执行回收 (IIS 7)
将应用程序池配置为在计划时间执行回收 您可以通过以下方法执行此过程:使用用户界面 (UI).在命令行窗口中运行 Appcmd.exe 命令.直接编辑配置文件或编写 WMI 脚本. 如下只介绍用户界面U ...
- IIS内存溢出-设置IIS的应用程序池
在ASP.NET Web服务器上,ASP.NET所能够用到的内存,通常不会等同于所有的内存数量.在machine.config(C:/WINDOWS/Microsoft.NET/Framework/v ...
- 64位系统 IIS中应用程序池设置导致 访问数据库错误
64 位操作系统不支持Microsoft OLE DB Provider for Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接.导致程序里面的数 ...
- 用批处理来重启IIS的应用程序池
批处理很简单,先Stop再Start就行,代码如下(apppoolName是应用程序池的实例名):c:\windows\system32\inetsrv\AppCmd.exe stop apppool ...
- [2015-11-23]分享一个批处理脚本,创建iis站点及程序池
建站批处理 batch_createSites.bat @echo off rem 以管理员身份执行本脚本,可添加多条call 以建立多个站点 call path\to\createSites.bat ...
随机推荐
- hdu 1005 根据递推公式构造矩阵 ( 矩阵快速幂)
f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. Sample Input1 1 3 //a b n1 2 100 0 0 ...
- JDK和CGLIB生成动态代理类的区别
关于动态代理和静态代理 当一个对象(客户端)不能或者不想直接引用另一个对象(目标对象),这时可以应用代理模式在这两者之间构建一个桥梁--代理对象. 按照代理对象的创建时期不同,可以分为两种: 静态代 ...
- 利用python将表格中的汉字转化为拼音
缺少包时用pip install 进行安装,例如: pip install xlsxwriter 完成代码如下: #!/usr/bin/python #-*-coding:utf-8-*- #fr ...
- Visual Studio 代码补全功能有时候会失效的原因
大部分时候失效是因为你的代码有的地方有错误!!
- 写一个java死锁的demo
package com.simon.study; /** * 线程死锁 一个线程要同时拥有两个对象的资源才能进行下一步操作: * @author: Simon * @date: 2017年7月29日 ...
- QT5入门之23 -QT串口编程(转)
QT5入门之23 -QT串口编程 QT5有专门的串口类: QSerialPort:提供访问串口的功能 QSerialPortInfo:提供系统中存在的串口的信息 具体使用方法: 1.在pro文件中 ...
- Nuxt.js 如何在 asyncData中 请求数据 ,并将拿到的数据传给子组件
说明:同接口请求一样,也可以进行数据的处理:return 中 左侧的变量 可以直接拿到在页面上使用,也可以传递给子组件 下面再给出一段代码,方便觉得有用的.却又不想手敲的朋友们: async as ...
- php快速无限遍历递归文件夹目录、子文件,支持绝对路径和相对路径,支持返回生成数组
支持无限极遍历子文件及文件夹,支持绝对路径和相对路径! 函数说明:array glob ( string $pattern [, int $flags ] )功能:寻找与模式匹配的文件路径,返回包含匹 ...
- Codeforces Round #516 (Div. 2) (A~E)
目录 Codeforces 1064 A.Make a triangle! B.Equations of Mathematical Magic C.Oh Those Palindromes D.Lab ...
- AD软件原理图封装过程(即由原理图转换到PCB)
第一步:先画出你所要的原理图 第二步:点击菜单栏的工具→封装管理器,进去封装管理器页面,点击左边的每一个元件, 然后选择封装时的元器件,再点击右边的确定(每一个元器件确定好封装要用的元件都要点确定) ...