第七十九章 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

相关文章

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

mybatis-plus QueryWrapper中or,and的使用及说明

《mybatis-plusQueryWrapper中or,and的使用及说明》使用MyBatisPlusQueryWrapper时,因同时添加角色权限固定条件和多字段模糊查询导致数据异常展示,排查发... 目录QueryWrapper中or,and使用列表中还要同时模糊查询多个字段经过排查这就导致只要whe

Java中的xxl-job调度器线程池工作机制

《Java中的xxl-job调度器线程池工作机制》xxl-job通过快慢线程池分离短时与长时任务,动态降级超时任务至慢池,结合异步触发和资源隔离机制,提升高频调度的性能与稳定性,支撑高并发场景下的可靠... 目录⚙️ 一、调度器线程池的核心设计 二、线程池的工作流程 三、线程池配置参数与优化 四、总结:线程

一文解密Python进行监控进程的黑科技

《一文解密Python进行监控进程的黑科技》在计算机系统管理和应用性能优化中,监控进程的CPU、内存和IO使用率是非常重要的任务,下面我们就来讲讲如何Python写一个简单使用的监控进程的工具吧... 目录准备工作监控CPU使用率监控内存使用率监控IO使用率小工具代码整合在计算机系统管理和应用性能优化中,监

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1

JAVA覆盖和重写的区别及说明

《JAVA覆盖和重写的区别及说明》非静态方法的覆盖即重写,具有多态性;静态方法无法被覆盖,但可被重写(仅通过类名调用),二者区别在于绑定时机与引用类型关联性... 目录Java覆盖和重写的区别经常听到两种话认真读完上面两份代码JAVA覆盖和重写的区别经常听到两种话1.覆盖=重写。2.静态方法可andro

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

zookeeper端口说明及介绍

《zookeeper端口说明及介绍》:本文主要介绍zookeeper端口说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、zookeeper有三个端口(可以修改)aVNMqvZ二、3个端口的作用三、部署时注意总China编程结一、zookeeper有三个端口(可以