我在GAE上构建并部署了一个应用程序。昨天似乎一切正常,每隔几秒钟向应用程序发送请求就会成功,响应时间约为2.5秒。如今,GAE一直在为每个请求部署一个新实例,或者甚至无法创建一个,从而导致无法接受的高响应时间(以及更高的费用),甚至500个服务器错误。
我试着挂起和重启应用程序几次,对几个请求再次工作,然后恢复到相同的行为。在控制台上,我可以看到新实例在服务请求后立即关闭,或者在服务器出错的情况下,GAE无法部署新实例。
我在控制台上检查了配额,似乎没有提示我不能从同一个IP发送多个请求。
有人遇到过这样的问题吗?如果有,可能的原因和补救措施是什么?请注意,我是GAE的新手,所以现在没有更多关于从哪里开始的线索。
编辑:我刚刚意识到一个实例使用的平均内存(在我的例子中是F2,它是256MB)非常接近最大值(250MB)。会不会是问题所在?我将升级到F4 (512MB),看看会发生什么。
发布于 2018-12-20 20:14:47
根据documentation -可以基于请求率、响应延迟和其他应用程序指标创建新实例。
因此,GAE标准实例根据它们接收的流量进行缩放是预期的行为。
此外,如果达到instance类的最大内存使用率,将触发关闭进程,如here所述。
至于创建新实例的失败,如果没有Stackdriver日志记录信息,很难说是什么原因造成的。在我看来,您可能会因为到达response limit而收到HTTP500错误,但它确实也可能由于其他原因而发生。
最后,考虑到问题的性质,我认为使用更好的实例类测试GAE应用程序的行为并比较结果是一个好主意。如果您在使用F4实例类时不再遇到这种情况,那么可以有把握地认为以前的实例类根本不足以满足应用程序的需求。
https://stackoverflow.com/questions/53861259
复制相似问题