![GCP HTTP 负载均衡器导致 Wordpress 运行缓慢](https://linux22.com/image/767572/GCP%20HTTP%20%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1%E5%99%A8%E5%AF%BC%E8%87%B4%20Wordpress%20%E8%BF%90%E8%A1%8C%E7%BC%93%E6%85%A2.png)
我在 GCP Compute Engine 上托管了一个 Wordpress 实例(使用 Marketplace 镜像)。当我直接访问实例 IP 时,它运行良好,延迟约为 20 毫秒。
但是,为了确保站点安全,我在实例前面使用了 GCP HTTP 负载均衡器。我已将我的域指向负载均衡器。
当我通过负载均衡器(HTTP 或 HTTPS)访问 Wordpress 时,我收到几个查询,这些查询的延迟时间非常短(大约 17 毫秒),但每 4 或 5 个查询就会有一个请求需要大约 5 秒。当我直接访问实例时,不会发生这种情况。
我启用了负载均衡器日志,发现实例每隔几个请求响应就很慢。我尝试将实例的 KeepAlive Apache2 参数设置为 300,但没有任何变化。
造成这种情况的根本原因是什么?(我不确定是 Wordpress,还是实例,还是负载均衡器)。
谢谢
答案1
为了检查和优化延迟,请考虑下面提到的场景:
为了优化负载均衡器的延迟,我建议您启用 Cloud CDN 选项。Cloud CDN 通过直接在 Google 的网络边缘提供资产来减少延迟。在后端配置负载均衡器部分,您可以选择启用云 CDN复选框。有关详细说明,请参阅Cloud CDN 操作指南。
为了减少应用程序内部的延迟,请检查虚拟机之间通信的任何远程过程调用 (RPC)。这种延迟通常发生在应用程序在层或服务之间通信时。以下工具云踪可以帮助您减少应用程序服务请求造成的延迟。有关更多信息,您可以查看这里。
如果问题仍然存在,请分享以下详细信息以更清楚地了解您的问题:
HTTP 负载均衡器配置,即健康检查、后端、前端、防火墙规则等。
支持负载均衡器日志 - 后端和前端延迟、从客户端到 LB 以及从 LB 到后端的 MTR。
要检查服务器 IP 和 LB IP 的请求和响应时间,请运行以下命令:
curl -w "@curl-format.txt" -o /dev/null -s http://<LB IP/server IP>
注意:要创建“curl-format.txt”文件,请通过 使用 curl 的计时详细信息文档。
答案2
我花了很多天试图解决这个问题,今天我决定走老路,做一个新负载平衡器。新负载平衡器运行良好。配置完全相同,所以我不确定发生了什么,但就是这样 :)