gpt4 book ai didi

azure - 使用 Azure WebRole 一段时间后,JSON 内容压缩将停止工作

转载 作者:行者123 更新时间:2023-12-04 04:48:59 24 4
gpt4 key购买 nike

按照这篇 MSDN 文章 Use AppCmd.exe to Configure IIS at Startup,我在 Azure 中为我的 Web API 配置了 JSON 压缩。 .

我发布了我的角色并开始测试,根据 Fiddler 的说法一切都很好。

这是一个请求 header 示例:

GET http://x.cloudapp.net:8080/api/xyz HTTP/1.1
Accept: application/json
Host: x.cloudapp.net:8080
Accept-Encoding: gzip

以下是响应 header 示例:

HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Content-Encoding: gzip
Expires: -1
Vary: Accept-Encoding
Server: Microsoft-IIS/8.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Thu, 18 Jul 2013 22:27:38 GMT
Content-Length: 2472

仅几次 Web API 调用后(例如 6 秒后),所有响应都不再压缩。

请求 header :

GET http://xyz HTTP/1.1
Accept: application/json
Host: sp-test-server2012.cloudapp.net:8080
Accept-Encoding: gzip

响应头:

HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Expires: -1
Server: Microsoft-IIS/8.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Thu, 18 Jul 2013 22:27:44 GMT
Content-Length: 16255

请注意第二个响应中缺少的Content-Encoding

因此,我收到了数百个已压缩的调用,然后大多数其余的调用都是未压缩的。我时不时地看到另一个回应被压缩了。或者,如果我停止测试一段时间然后恢复,似乎压缩又开始了。

IIS 8 中的压缩是否受到“限制”或其他什么影响?比如说,如果 CPU 几乎耗尽,IIS 会停止压缩吗?

在 Azure 中监控我的 WebRole 时,在重负载测试期间,我的 CPU 使用率可能会超过 90%。很难判断这是否与结果缺乏压缩有关。内存使用似乎根本不是问题。

我希望这更加可靠和可预测!

最佳答案

嗯,显然昨天我的 Google Fu 让我失望了。我今天找到了答案,确实 IIS 会或不会根据 CPU 使用情况动态压缩内容。 HTTP Compression

有两种控制动态压缩的设置。其中之一指定何时禁用:dynamicCompressionDisableCpuUsage,默认 90%。另一个指定何时重新启用dynamicCompressionEnableCpuUsage,默认 50%。

你学到的东西。

关于azure - 使用 Azure WebRole 一段时间后,JSON 内容压缩将停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17736121/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com