第七十九章 IIS 技术说明 - 工作进程的空闲超时

2024-05-13 08:44

本文主要是介绍第七十九章 IIS 技术说明 - 工作进程的空闲超时,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 第七十九章 IIS 技术说明 -
  • 工作进程的空闲超时
  • 回收工作流程
  • `Bitness` — 适用于 `Windows` 的 `64` 位服务器上的 `32` 位应用程序

第七十九章 IIS 技术说明 -

工作进程的空闲超时

通常有必要通过终止未使用的工作进程来节省系统资源。可以将工作进程配置为在指定时间段后正常关闭。当处理负载很重、所识别的应用程序始终处于空闲状态或新的处理空间不可用时,此功能可用于更好地管理资源。

当工作进程终止时,它管理的 Web Gateway 实例也会关闭,并且该网关实例所持有的 IRIS 连接池也会终止。当然,附加的无状态连接始终可以以对 Web 应用程序的用户透明的方式进行替换,但状态感知会话(保留模式 1)会在其托管连接关闭时终止。

回收工作流程

可以将 IIS 配置为定期重新启动工作进程,以便回收有故障的 Web 应用程序。此功能有助于确保应用程序池保持健康并恢复任何泄漏的系统资源。

可以将工作进程配置为根据经过的时间、服务的请求数、计划时间以及内存使用情况重新启动。

上一节(空闲超时)讨论了关闭工作进程对 Web Gateway 的影响。同样的考虑因素也适用于此。由于 Web 应用程序只能通过精心管理的通道与 Web 网关交互,因此建议不要回收支持 Web 应用程序的工作进程。

Bitness — 适用于 Windows64 位服务器上的 32 位应用程序

注意:本节适用于加载到托管 Web 服务器地址空间的模块:ISAPI 扩展和本机模块(CSPms[Sys].dllCSPcms.dll)。 CGI 模块不受影响,因为它们作为相对于 IIS 的独立进程运行。

启用 32 位应用程序设置适用于应用程序池级别,这使得可以设置特定应用程序池的位数。在单台服务器安装中,您可以将一个应用程序池配置为运行本机 64 位应用程序,将另一个应用程序池配置为运行 32 位应用程序。

要访问应用程序池的位数设置,请进入 IIS 控制面板:

  1. 在左侧面板中选择应用程序池。
  2. 选择适当的应用程序池。
  3. 在右侧面板中选择高级设置。
  4. 将出现“高级设置”对话框。启用 32 位应用程序设置位于“常规”部分。可以将其设置为 TrueFalse

顺便说一句,可以使用 appcmd 命令在 Window 命令行中操作此配置设置。例如:

appcmd set apppool /apppool.name:DefaultAppPool/enable32bitapponwin64:true

这会将应用程序池 DefaultAppPool 设置为在 32 位模式下运行。

还可以使用 appcmd 命令根据位数列出应用程序池。例如,要列出以 64 位模式运行的所有应用程序池,请使用以下命令:

appcmd list apppools /enable32bitapponwin64:false

最后,由于应用程序池可以在不同的位数模式下运行,因此有必要确保应用程序池加载的本机模块(和 ISAPI 扩展)本身具有该池的正确位数。例如,如果托管应用程序池是 64 位,则必须使用 64 位网关模块(例如 CSPms[Sys].dll)。如果托管应用程序池是 32 位,则必须改用 32 位网关模块。

各个模块的位数检查是通过模块的 web.config 文件中的前提条件完成的。对于 Web 网关,此文件通常如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<configuration><system.webServer><handlers><add name="WebGateway_All" path="*" verb="*" modules="CSPms" resourceType="Unspecified" \preCondition="bitness64" /></handlers><security><requestFiltering><hiddenSegments><remove segment="bin" /></hiddenSegments></requestFiltering></security></system.webServer>
</configuration>

请注意前提条件子句中的位数设置。在本例中,bitness 设置为 bitness64,这意味着 IIS 检查在 64 位应用程序池中运行的 64 位网关模块。

如果使用 32 位应用程序池,则必须使用 32 位网关模块,并且前提条件设置为 bitness32

如果安装的模块、前置条件子句和/或托管应用程序池的期望之间存在不一致,则 IIS 将返回类似于下面所示的错误情况。

Error:
The module(s) assigned to this handler mapping has the following preconditions that are not
present in the handler mapping:
bitness64
Runtime errors may occur if a handler mapping does not have a set of preconditions that are
equally as restrictive as, or more restrictive, than the module(s) assigned to the mapping.
Please ensure that this handler mapping has the correct preconditions, and that the 
preconditions are not in conflict.

这篇关于第七十九章 IIS 技术说明 - 工作进程的空闲超时的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/985218

相关文章

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

Linux中的进程间通信之匿名管道解读

《Linux中的进程间通信之匿名管道解读》:本文主要介绍Linux中的进程间通信之匿名管道解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基本概念二、管道1、温故知新2、实现方式3、匿名管道(一)管道中的四种情况(二)管道的特性总结一、基本概念我们知道多

Linux进程终止的N种方式详解

《Linux进程终止的N种方式详解》进程终止是操作系统中,进程的一个重要阶段,他标志着进程生命周期的结束,下面小编为大家整理了一些常见的Linux进程终止方式,大家可以根据需求选择... 目录前言一、进程终止的概念二、进程终止的场景三、进程终止的实现3.1 程序退出码3.2 运行完毕结果正常3.3 运行完毕

kotlin中的模块化结构组件及工作原理

《kotlin中的模块化结构组件及工作原理》本文介绍了Kotlin中模块化结构组件,包括ViewModel、LiveData、Room和Navigation的工作原理和基础使用,本文通过实例代码给大家... 目录ViewModel 工作原理LiveData 工作原理Room 工作原理Navigation 工

Windows命令之tasklist命令用法详解(Windows查看进程)

《Windows命令之tasklist命令用法详解(Windows查看进程)》tasklist命令显示本地计算机或远程计算机上当前正在运行的进程列表,命令结合筛选器一起使用,可以按照我们的需求进行过滤... 目录命令帮助1、基本使用2、执行原理2.1、tasklist命令无法使用3、筛选器3.1、根据PID

JAVA SE包装类和泛型详细介绍及说明方法

《JAVASE包装类和泛型详细介绍及说明方法》:本文主要介绍JAVASE包装类和泛型的相关资料,包括基本数据类型与包装类的对应关系,以及装箱和拆箱的概念,并重点讲解了自动装箱和自动拆箱的机制,文... 目录1. 包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱1.3 自动装箱和自动拆箱2. 泛型2