GCP负载均衡器502服务器错误和" backend_connection_closed_before_data_sent_to_client" IIS 10

时间:2018-04-25 11:09:52

标签: iis google-cloud-platform load-balancing http-error iis-10

我有4个IIS 10 Web服务器的GCP负载均衡器。偶尔会出现 502-Server错误。它显示在日志中是因为 backend_connection_closed_before_data_sent_to_client 。我已经阅读了文章https://cloud.google.com/compute/docs/load-balancing/http/,并且说nginx和apache需要将keepalive timout设置为620秒。我如何在IIS 10中执行相同的操作。

2 个答案:

答案 0 :(得分:4)

在提高票务谷歌云团队后想出来。我把它放在这里,以便其他人可以受益。

第1步:在Google Cloud Load Balancer中设置超时

Google云负载均衡器中有两种超时设置。

  1. 超时
  2. 连接耗尽超时。
  3. 请参阅下面的屏幕截图。 Load balancer settings

    以上两种设置都必须相同。在我们的例子中,有许多长时间运行的请求,它被设置为1800秒。

    步骤2:在IIS中设置连接超时20秒,大于负载均衡器设置

    在IIS站点名称下 - 转到高级设置,然后将连接超时值设置为比负载均衡器超时多20秒。在我的情况下1820年。

    IIS Settings

    这个想法是IIS连接不应该在负载均衡器之前超时。如果超时则可能导致 backend_connection_closed_before_data_sent_to_client 错误。

答案 1 :(得分:1)

您可以在{{3}}中将此设置为http运行时中的执行超时属性,默认情况下,当您设置保持活动状态时,它会将时间设置为120秒。如果仍然不起作用则可能存在代理服务器之间您的请求响应过程。您必须检查代理服务器是否超时。

我在gcp中遇到了相同的情况,我已经在负载均衡器级别设置了所有内容但是没有用。然后我发现我们的进程之间有一个代理服务器。如果您能详细说明,请告诉我