我刚刚对我的应用程序进行了负载测试。我注意到两个相同请求的延迟有很大的变化:3s对30s。当我深入研究跟踪时,我发现如下:
| | Traced (ms) | Untraced (ms) |
|----------------------+-------------+---------------|
| High-latency Request | 193 | 29948 |
| Low-latency Request | 305 | 2934 |下面是跟踪的屏幕截图:
低总延迟

高总延迟

我无法理解运行时性能的10比1差异。
在加载下,我只看到这些高延迟请求。我的代码中有什么东西可以解释这种变异性(假设两个请求都遵循相同的代码路径)?
发布于 2016-10-13 18:02:52
根据我的经验,这些异常高的延迟是由一个新的实例启动引起的。AppEngine Google中有一次关于类似问题的讨论:https://groups.google.com/d/msg/google-appengine/MBveo1KSTyY/mkYdyCmfAgAJ
你可以做两件事:
希望这能有所帮助。在我的例子中,使用更高的实例类已经有很大帮助了!
发布于 2016-10-22 00:45:18
我也有这个问题,谷歌的支持建议减少max_concurrent_requests。当时的假设是CPU被节流了。在减少它之后,延迟在一般情况下会变得更好。我仍然不确定发生了什么,因为我没想到应用程序会占用那么多CPU。不幸的是,没有任何工具可以在GAE上对CPU进行分析,将CPU密集的部分精确定位在哪里。
https://stackoverflow.com/questions/37307461
复制相似问题