微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

来自 Google CDN 的高延迟 - 如何解决它?

如何解决来自 Google CDN 的高延迟 - 如何解决它?

我们正在尝试找出 Google CDN 延迟高的原因。

我们的网站在 Google'a http_load_balancer 后面,CDN 已打开。

例如,通过检查 jpg 文件 (43Kb) 的 sampe GET 请求,我们可以从 http_load_balancer 日志中看到,大约 30% 的此类请求的 httpRequest.latency > 1 秒,并且很多需要更长的时间,例如几秒或几百秒....

这只是通过查看 24 小时日志样本(大约 6K 相同的请求)。

所有这些请求的 httpRequest.cacheLookuphttpRequest.cacheHit 都是 true。 另外 jsonpayload_type_loadbalancerlogentry.statusdetailsresponse_from_cachejsonpayload_type_loadbalancerlogentry.cacheid显示正确的区域。

在浏览器中手动执行相同的 GET 请求时,我们在 TTFB 大约 15-20 毫秒内获得预期结果。

知道在哪里寻找线索吗?

解决方法

with 字段衡量整个下载持续时间,并直接受到慢速客户端的影响 - 例如网络拥塞或数据流量受限的移动设备。

您可以通过查看 Cloud Monitoring 中的 httpRequest.latency 指标(客户端和 Cloud CDN 之间的 RTT)以及平均值、中位数和第 90 个百分位 frontend_tcp_rtt 来检查这一点,其中慢客户端将显示为异常值:https://cloud.google.com/load-balancing/docs/https/https-logging-monitoring#monitoring_metrics_fors

您可能会发现慢速客户端来自一组特定的 total_latencies 值。

,

可以引入延迟:

  • 在原始客户端和负载平衡器之间。 您可以使用指标 https/frontend_tcp_rtt 查看该段的延迟。
  • 在负载均衡器和后端实例之间。 可以使用指标 https/backend_latencies(该指标还包括后端中的应用处理时间)进行审核。
  • 通过在实例本身上运行的软件。 为了对此进行调查,我将检查后端实例软件上的访问/错误日志以及 VM 实例的资源利用率。

有关 GCP load balancer metrics doc 上的指标描述的更多信息。

httpRequest.latency 日志字段 description: “服务器上的请求处理延迟,从收到请求到发送响应。”

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?