IIS性能优化 - 用于 IIS 的 Http.sys 注册表设置
2008-06-26 11:31
465 查看
概要
loadTOCNode(1, 'summary');在 Microsoft Windows Server 2003 中,Http.sys 是处理 HTTP 请求的内核模式驱动程序。根据特定要求,可以配置多个注册表值。“更多信息”部分中的表包含有关这些注册表值的以下信息:
• | 注册表项名称 |
• | 默认值 |
• | 有效值范围 |
• | 注册表项功能 |
• | 警告代码(如果适用) |
本文的目标读者是高级用户,并假定他们了解注册表和更改注册表的风险。
回到顶端
更多信息
loadTOCNode(1, 'moreinformation');重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 (http://support.microsoft.com/kb/322756/) 如何在 Windows 中备份和还原注册表
在以下注册表项下,可以创建下列 DWORD 值:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/HTTP/Parameters
注册表项 | 默认值 | 有效值的范围 | 注册表项功能 | 警告代码 |
---|---|---|---|---|
AllowRestrictedChars | 0 | 布尔型 | 如果不为零,则 Http.sys 接受请求 URL 中解码为 U+0000 – U+001F 和 U+007F – U+009F 范围的十六进制转义字符。 | 0 |
EnableAggressiveMemoryUsage | 0 | 0,1 | 预分配非分页缓冲池内存。默认情况下,如果可用的非分页缓冲池内存不足 20MB,HTTP 服务将停止接受连接。在将此值添加到注册表中后,HTTP 服务将在可用非分页缓冲池内存不足 8MB 时停止接受连接。设置此注册表值可减少 Httperr.log 文件中的“Connections_refused”和 503 错误数。 | 0 |
EnableNonUTF8 | 1 | 布尔型 | 如果为零,则 Http.sys 仅接受 UTF-8 编码的 URL。如果不为零,Http.sys 也接受所请求 ANSI 或 DBCS 编码的 URL。 | 0 |
FavorUTF8 | 1 | 布尔型 | 如果不为零,Http.sys 总是先尝试将 URL 作为 UTF-8 解码;如果转换失败并且 EnableNonUTF8 不为零,则 Http.sys 尝试将其作为 ANSI 或 DBCS 解码。如果为零(并且 EnableNonUTF8 不为零),则 Http.sys 尝试将其作为 ANSI 或 DBCS 解码;如果失败,则它会尝试 UTF-8 转换。 | 0 |
MaxBytesPerSend | 65536 | 1-0xFFFFF(字节) | 替代 Http.sys 使用的 TCP 窗口大小。在具有较大带宽和较高延迟的网络环境中,此值越大,下载速度就越快。 | 0 |
MaxConnections | MAX_ULONG | 1024 (1K) – 2031616 (2MB) 连接 | 替代驱动程序中的 MaxConnections 计算。这主要是一种内存功能。 | 1 |
MaxEndpoints | 0 | 0 - 1024 | 所允许的当前终结点对象的最大数目。默认值零表示最大数目是基于可用内存计算得出的 | 1 |
MaxFieldLength | 16384 | 64 - 65534 (64K - 2) 字节 | 设置每个标头的上限。请参见 MaxRequestBytes。它会将每个 URL 的最大字符数限制在大约 32K 左右。 | 1 |
MaxRequestBytes | 16384 | 256 - 16777216 (16MB) 字节 | 确定请求行和标头的总大小的上限。 默认设置是 16KB。 如果此值小于 MaxFieldLength,则调整 MaxFieldLength 值。 | 1 |
PercentUAllowed | 1 | 布尔型 | 如果不为零,则 Http.sys 接受请求 URL 中的 %uNNNN 符号。 | 0 |
UrlSegmentMaxCount | 255 | 0 - 16,383 段 | URL 路径段的最大数目。如果为零,则计数受 ULONG 最大值的限制。 | 1 |
UriEnableCache | 1 | 布尔型 | 如果不为零,则启用 Http.sys 响应和片段高速缓存。 | 0 |
UriMaxUriBytes | 262144(字节) | 4096 (4K) – 16777216 (16MB) 字节 | 大于此值的任何响应都不会缓存在内核响应高速缓存中。 | 1 3 |
UriScavengerPeriod | 120(秒) | 10 - 0xFFFFFFFF 秒 | 确定高速缓存 scavenger 的频率。任何在 UriScavengerPeriod 定义的秒数内未被访问的响应或片段均会被刷新。 | 1 2 |
UrlSegmentMaxLength | 260 | 0 - 32,766 字符 | URL 路径段(URL 中斜杠之间的部分)中的最大字符数。如果为零,则其长度受 ULONG 最大值的限制。 | 1 |
906977 (http://support.microsoft.com/kb/906977/) BUG:当 Internet Information Services 6.0 上托管的 ISAPI 应用程序和 CGI 应用程序发送响应时出现性能下降的问题
在 Microsoft Windows XP 和 Microsoft Windows Server 2003 中,还可以在以下注册表项下创建下面的 DWORD 值:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/HTTP/Parameters
注册表项 | 默认值 | 有效值的范围 | 注册表项功能 | 警告代码 |
---|---|---|---|---|
CertChainCacheOnlyUrlRetrieval | 1 | 0,1 | 默认情况下,如果将 IIS 配置为使用客户端证书,将不会在链验证期间遵循 AIA 提示。此行为是为保证性能和安全而设计的。例如,此行为有助于防止 DoS 攻击。但是,在需要检索 AIA 时,此行为还可能导致证书被意外拒绝。 要替代此行为,可以在“HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/HTTP/Parameters”注册表项下将 DWORD 参数 CertChainCacheOnlyUrlRetrieval 设置为 0(零)。 | 不适用 |
回到顶端
警告代码
loadTOCNode(2, 'moreinformation');• | 0:无风险。 |
• | 1:更改此注册表项被认为是极其危险的。此项会导致 Http.sys 占用更多内存,并且还可能增加易受恶意攻击的漏洞。 |
• | 2:此值越低,高速缓存的刷新频率就可能越高。如果发生此行为,可能会影响性能。 |
• | 3:低值可能影响静态内容的性能。 |
要重新启动 HTTP 服务、类型和所有相关的 IIS 服务,请按照下列步骤操作:
1. | 依次单击“开始”、“运行”,键入 Cmd,然后单击“确定”。 |
2. | 在命令提示符处,键入 net stop http,然后按 Enter。 |
3. | 在命令提示符处,键入 net start http,然后按 Enter。 |
4. | 在命令提示符处,键入 net stop iisadmin /y,然后按 Enter。 注意:所有依赖 IIS Admin Service 服务的 IIS 服务也将停止。请记下在停止 IIS Admin Service 服务时停止的 IIS 服务。在下一步中,将需要重新启动其中的每项服务。 |
5. | 重新启动在步骤 4 中停止的 IIS 服务。为此,请在命令提示符处键入 net start servicename,然后按 Enter。在该命令中,servicename 是要重新启动的服务的名称。例如,要重新启动 World Wide Web Publishing Service 服务,请键入 net start "World Wide Web Publishing Service",然后按 Enter。 |
相关文章推荐
- INF:用于 IIS 的 Http.sys 注册表设置
- (转)IIS设置优化(需根据服务器性能,调整具体参数值)
- 在IIS中设置Gzip页面压缩 优化网站的性能
- php性能优化之设置php session多级目录(原文http://www.bewyn.com/archives/44)
- .net性能测试和优化3 负载均衡、IIS、HTTP优化
- JAVA性能优化—IBM JDK JVM参数设置
- IIS性能诊断与优化
- 记录linux下通过对limits的设置来优化系统性能
- IIS设置HTTP 响应标头控制文件下载
- 转载--Windows Server 2016 配置指南 之 IIS 设置 HTTPS HTTP/2 并跑分到 A+
- web.config优化网站性能设置
- HTTP性能调优之设置连接失效时间(翻译)
- HTTP/2 与 WEB 性能优化(二)
- 教你玩转Win XP注册表之性能优化
- 我教你学之系统性能优化注册表修改实例(3)
- 配置IBMHTTPServer和WebSphereApplicationServer连接优化应用服务器性能
- Windows server 2008 HTTP.sys被禁用导致80端口被禁用和IIS服务无法启动解决办法
- 网站性能优化之HTTP请求过程
- IIS 返回 405 - 不允许用于访问此页的 HTTP 谓词。终极解决办法!!!!
- IIS 配置性能优化