1

我有一个在 IIS 7 上运行的 MVC 4 Web API 应用程序。为了分析应用程序缓慢的原因,我尝试分析应用程序并没有发现重大瓶颈。显然,响应正在缓冲,刷新前的等待时间导致延迟。我了解到有一个设置 - aspBufferingOn 可以在 IIS 中设置为 false 以禁用缓冲。文档说此设置应该在 IIS 管理器的功能视图中的“ASP”功能下可用。但我在那里没有看到名为“ASP”的功能。

截屏

我在哪里可以在 IIS 管理器中为我的 Web API 应用程序设置“aspBufferOn”设置的值?

4

1 回答 1

1

先看 Filip W 的回答:https ://stackoverflow.com/a/14906901/1241400

关于您的 ASP 功能问题

您需要转到开始,然后在搜索类型中打开或关闭 Windows 功能并启用它。

在此处输入图像描述

参考:ASP 限制

更多关于AspBufferingOn

此属性指定是否缓冲来自 ASP 应用程序的输出。如果该值为 TRUE(默认值),则应用程序的所有输出都会在缓冲区刷新到客户端浏览器之前收集到缓冲区中。如果此属性设置为 FALSE,则 ASP 脚本的输出将在可用时写入客户端浏览器。

启用缓冲后,ASP 应用程序必须在客户端浏览器接收到任何输出之前完全处理 ASP 脚本。出于这个原因,即使缓冲脚本所花费的总时间更少,对于用户而言,已打开缓冲的应用程序似乎比那些已关闭缓冲的应用程序要慢。因此,如果打开了缓冲,您应该考虑使用 Response.Flush 方法在处理脚本时向用户传递内容片段。

注意 如果缓冲关闭,任何修改现有 HTTP 标头或生成新标头的方法都必须在内容正文发送到客户端浏览器之前执行。如果打开缓冲,则不需要此限制。

重要 如果您通过从以前版本的 IIS 升级来安装 IIS 5.0,则此属性的默认设置将为 FALSE,而不是 TRUE。

  • 数据类型 布尔

  • 默认值

  • 继承 可继承

于 2013-10-24T14:37:34.447 回答