在GAE中使用Warmup Requests(预热请求)
2010 12 3 11:14 AM 2759次查看
分类:Google App Engine 标签:Google App Engine
在一个新instance上载入你的代码时,会导致Loading Request。
也就是说,instance必须载入这个请求里所有import的库,这会导致明显慢于其他的请求。
Google给出的建议是:
- 启动时只载入必需的代码。
- 少访问硬盘。
- 在某些情况下,从zip或jar文件中载入代码会比从很多独立的文件中载入更快。(注意是在某些情况下,别一股脑全zip了。)
Warmup Requests将可以减少Loading Requests,因为GAE在发现需要更多instance时,会在用户访问前先访问这个instance,以载入必需的代码。
不过它并非万能,如果用户是第一个访问的,当前并无可用instance,Warmup Requests将不会有效。而启用Always On将消除大部分Loading Requests,只要instance的增长没有超过GAE的预期。
要启用Warming Requests,只需在app.yaml中添加:
inbound_services:
- warmup
这样就会用GET方法预访问/_ah/warmup。你只要在这个请求中载入代码即可。
0条评论 你不来一发么↓