保留的实例和预热请求不起作用
我从来没有能够让它工作得非常正确而且令人不安:我已经配置了热身请求,但我从未看到它们通过,因此大约10%的请求导致新实例被启动并请求花费30秒或者更差。 而且由于持续的减速,有时这些旋转需要比平常更长的时间和超时,这是非常可怕的。 这是一个春季应用程序,启动速度非常慢,我可能可以优化到不到30秒,但除此之外……我需要预热请求才能工作,因此实例不会满足用户请求,直到它们为止实际准备好了
有人说热身请求不起作用,除非你有常驻实例,这是有意义的,所以我注册了336小时/周的折扣实例小时,但一小时后我仍然没有看到任何保留的实例创建。 即使我杀死所有动态的,也会创建新的动态。
所以我的具体问题是:我是否需要做任何其他事情来设置保留实例? 一旦这些提起,那还会打开预热请求吗?
我的应用设置:
空闲实例:自动自动
待定延迟:5s-10s
配置服务:预热请求
AppEngine上-web.xml中:
true true
web.xml中:
_ah_warmup com.google.apphosting.utils.servlet.WarmupServlet _ah_warmup /_ah/warmup
我的主要Spring调度程序servlet和appstats servlet也有:
1
自己搞清楚了。 更好的Google搜索显示了正确的文档页面:
https://developers.google.com/appengine/docs/adminconsole/performancesettings
指定空闲实例时会创建预留实例。 所以我将Idle Instances设置从auto / auto更改为2 / auto。 而已!
性能现在很好且稳定,因此我建议任何拥有付费应用的用户至少指定1个空闲实例。
我也确实看到现在为新动态实例提出的热身请求,因此保留实例确实是预热的要求。