我在flask restplus api的谷歌容器引擎上运行TCP Load Balancer。烧瓶restplus api调用谷歌云数据存储或云sql,但这似乎不是问题。
每天几次甚至更多次,有一个潜伏期延迟的时刻。重新启动pod可解决此问题,或者在5到10分钟内解决问题。当然这太多了,需要解决。
任何人都知道这可能是什么问题或有这些问题的经验?
THX
答案 0 :(得分:0)
您可以尝试的一件事是监控实例CPU负载。
尽管延迟与使用率峰值并不对应,但可能会出现累积影响CPU负载的情况,并且当CPU达到给定%并且需要时,您遇到的延迟会发生暂时退回。如果是这种情况,您可以使用群集自动缩放,或尝试运行更高规格的机器,看看是否有任何区别。或者,如果您在pod /容器上使用的CPU有限,请尝试增加此限制。
如果您确信CPU不是问题的原因,您可以尝试在问题发生时通过SSH连接到受影响的实例,通过负载均衡器发送请求并使用tcpdump分析流量来进进出出。您可能能够发现延迟是来自负载均衡器(通过监控到实例的HTTP流量的延迟),还是来自云数据存储区或云SQL(来自实例)。
或者,尝试使用strace在延迟之前和期间监视相关进程,或者dtrace来监视整个系统。