【问题标题】:Speed difference through Google cloud load balancer通过谷歌云负载均衡器的速度差异
【发布时间】:2020-06-30 16:17:34
【问题描述】:

我们有 k8s 集群,其中的应用托管在 GKE 上。 当我们尝试通过谷歌云负载均衡器获取静态内容(8.25Mb)时,检索时间为 3.8 秒,当我们尝试直接通过虚拟机中 k8s 集群上的 nginx 进行检索时,需要 0.2 秒。速度差异的原因是什么? Google 云负载均衡器是否有任何设置,例如带宽?


~$ wget https://.../main.js
...
HTTP request sent, awaiting response... 200 OK
Length: 8649943 (8.2M) [application/javascript]
Saving to: 'main.js'
main.js               100%[========================================================================================>]   8.25M  2.27MB/s    in 3.8s 


__________________________________

Nginx

~$ wget https://.../main.js
...
Saving to: 'main.js'
main.js               100%[========================================================================================>]   8.25M  50.2MB/s    in 0.2s

【问题讨论】:

    标签: google-cloud-platform google-kubernetes-engine google-cloud-load-balancer


    【解决方案1】:

    我不会说它与 loadbalancer 有关。请记住,与本地可用的内容相比,下载托管在云中的内容总是需要更多的时间。

    如果您怀疑 loadbalancer 会有所作为,您应该将其与直接从 GKE 节点下载时的速度进行比较。您可以通过 NodePort Service 公开您的 nginx Deployment,并使用 loadbalancer 避免这种方式。如果这样的下载比通过 loadbalancer 下载花费的时间要少得多,那么你可以责怪 loadbalancer。但我很确定结果会几乎一样。

    您的本地 k8s 集群在哪里?它在您本地网络的某个地方吗?或者可能在您正在执行 wget 的同一台机器上运行的 VM 上?如果是这样,它总是比从任何云托管的 VM 下载所花费的时间要少得多。

    下载速度延迟等网络参数也将取决于您的GKE集群是什么区域如果这是一个距离您所在位置很远的区域,那么这些参数与距离您相对较近的区域相比可能会有很大差异。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-18
      • 2020-12-31
      • 1970-01-01
      • 2018-09-09
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      • 2019-10-04
      相关资源
      最近更新 更多