ARR不会将Response.Flush内容发送给客户端

时间:2019-08-08 19:43:07

标签: iis asp-classic iis-10 arr

在某些经典asp 应用程序中,我们使用Response.Flush立即将内容从服务器发送到客户端,至少这是与 IIS7 一起使用的方式。

现在我们有两个服务器和一个使用 ARR 来平衡请求的负载反向代理服务器(全部3个都运行 IIS10 ),出于某种原因,{{1 }}方法无法正常使用。似乎响应已发送到 ARR ,后者要等到响应服务器发送所有内容,然后再将其提供给客户端。

主要是当剩余内容需要一些时间来处理时,这是一个问题。

我应该了解任何配置吗?

1 个答案:

答案 0 :(得分:2)

“ ARR服务器代理设置”中有一个响应缓冲区阈值设置,默认为256 KB。

如果将其设置为0(KB),则它必须能够按预期工作。

这是计算机范围设置,因此您需要具有管理权限才能对其进行修改。

您可以通过在命令提示符下运行以下命令来更改设置

%windir%\system32\inetsrv\appcmd.exe set config  -section:system.webServer/proxy /minResponseBuffer:"0"  /commit:apphost

或使用IIS管理器的GUI:

  • 打开IIS管理器
  • 在菜单上单击服务器名称
  • 双击应用程序请求路由缓存
  • 操作窗格上单击服务器代理设置
  • 滚动到缓冲区设置组。
  • 更改响应缓冲区阈值(KB)设置。
  • 操作窗格上单击应用