如何解决需要排查 Bigtable 读取延迟
我们有一个面向 GKE 容器化 Internet 的应用程序,通过负载均衡器(Nginx 上的 ssl 终止)为 Bigtable 提供传入流量/请求。请求本质上是同步的。 我们使用 C++ Bigtable 客户端库与 Bigtable 进行交互。 见-https://github.com/googleapis/google-cloud-cpp
大多数“GET”调用需要 40-50 毫秒,这似乎很不寻常。我也调查了 Bigtable“Key Visualizer Tool”,没有发现 Rowkey 和架构有任何问题。
为了确认 Bigtable 在 Pod 中工作正常,我运行了一个示例“hello world”并尝试同步获取示例 Rowkeys 的响应,大多数“GET”调用需要 4-5 毫秒。现在,我非常不确定是什么原因导致通过应用程序调用相同 Rowkey 的“GET”调用需要很长时间才能返回响应。
网络延迟是需要考虑的,但它也会延迟示例 Python“Hello World”代码的响应时间。此外,Bigtable 集群和 GKE 节点位于同一区域。
知道我应该在哪些方面进行故障排除吗?
解决方法
想到的一件事是创建 bigtable::Table
对象的初始开销。您是否在请求之间缓存对象?可以这样做吗?
第二个领域是身份验证,但我假设您对 Python“Hello World”和 C++ 应用程序使用相同的身份验证方法?
如果这没有帮助,请联系我,我的电子邮件地址应该很容易从 GitHub 站点找到。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。