【发布时间】:2015-05-22 12:55:42
【问题描述】:
我们的 GAE python 应用程序公开了一个被外部客户端系统(基于 Java,如果重要的话)访问的 API。绝大多数请求(每天数万个)工作正常,但是少数请求(每天少于 10 个)失败,客户端报告“对等连接重置”错误。发生这种情况时,客户端系统已触发多个成功完成的 API 调用,因此我们排除了客户端连接问题的情况。
GAE 日志仅显示与应用相关的故障,但其他类型的故障(例如连接错误)不会出现在日志中,因此我们无法确定这些 API 调用失败的原因。
除了日志之外,还有什么方法可以更好地识别此类问题?
接受 API 调用的 GAE 模块具有以下缩放属性
instance_class: B2
basic_scaling:
max_instances: 5
idle_timeout: 1m
并且在发生故障时,只有 2 个(最多 5 个)实例在运行,因此 GAE 模块低于其扩展限制。 API 调用的平均服务时间不到 500 毫秒,我们从未见过超过 60" 请求限制的日志错误。总体而言,该模块似乎没有过载。可能是其他原因吗?
【问题讨论】: