0.01% 的请求出现 IIS 500.19 错误

Øyv*_*tad 5 iis iis-7 asp.net

我们已经部署了一个简单的ServiceStack应用程序,在 IIS 7 中提供 Podcast RSS 提要。搜索 IIS 日志,我们发现少量请求获得 HTTP 500.19错误代码。

在大约 550 000 个每日请求中,其中大约 600 个失败并返回 500.19。这意味着我们成功地为 99.9% 的请求提供了 RSS。我仍然很好奇为什么我们会失败0.1%

500.19 通常是由于配置无效而发生的。配置如何仅对 0.1% 的请求失败?

我无法手动重现该错误,因此我没有 HResult 代码。这也不存在于 IIS 日志中。但是IIS日志中的sc-win32-status64

一些细节:

  • 应用程序的内部日志记录从不报告任何错误,这表明请求从未到达我们的代码。
  • 该错误通常发生在最大的 RSS(740KB gzipped)上,但也会发生在较小的 RSS(140KB gzipped)上。
  • 失败的请求通常来自移动客户端(IOS、Android),这并不能说明什么,因为播客通常在移动设备上消费。
  • 该应用程序部署在 6 个节点上,使用 BigIP 进行负载平衡。配置文件不在节点之间共享。0.1% 的错误率在所有节点上是相等的。
  • 我们在 IIS 中激活了输出缓存(但没有内核缓存)。