Google app engine 重新部署后,谷歌应用程序引擎第一次处理请求需要很长时间吗?

Google app engine 重新部署后,谷歌应用程序引擎第一次处理请求需要很长时间吗?,google-app-engine,startup,Google App Engine,Startup,在我的GoogleAppEngine项目中,每次我重新部署项目并首次提出请求时,执行操作大约需要1.5秒。但在下一个请求中,只需要0.196秒的时间 例如: 当我查询数据存储以检索数据时间戳列表时: 所以我的问题是,为什么应用程序引擎在重新部署后第一次响应会花费太多时间 提前谢谢 它可能取决于几件事,但很可能与实例启动所需的时间相对应,称为加载请求。一旦实例启动,下一个请求就会更快 重新部署后,您会观察到这种情况,但如果您的应用程序引擎实例闲置太长时间(未收到任何请求),则它会关闭,下一个请求将

在我的GoogleAppEngine项目中,每次我重新部署项目并首次提出请求时,执行操作大约需要1.5秒。但在下一个请求中,只需要0.196秒的时间

例如: 当我查询数据存储以检索数据时间戳列表时:

所以我的问题是,为什么应用程序引擎在重新部署后第一次响应会花费太多时间


提前谢谢

它可能取决于几件事,但很可能与实例启动所需的时间相对应,称为加载请求。一旦实例启动,下一个请求就会更快

重新部署后,您会观察到这种情况,但如果您的应用程序引擎实例闲置太长时间(未收到任何请求),则它会关闭,下一个请求将不得不等待新实例启动,您也会看到相同的行为

您可以更改空闲时间设置以及一些其他内容,如始终打开的实例数(常驻实例)等。。微调这些是您的最佳选择


请查看此处的说明。

谢谢您的快速回复。我还有一个疑问,那就是如何更改app engine实例的空闲时间设置?在任何更新之后,实例都将重新启动。您应该将实例作为不同版本进行测试,以便知道它已启动,然后如果希望避免启动成本,请将其升级为默认值。在App Engine管理控制台中的“应用程序设置”下,您可以更改空闲实例设置,使至少有一个实例始终运行(默认情况下,它是自动的),因此,您将始终有一个实例准备好立即处理请求。或者,您可以直接在app.yaml文件中使用模块配置(或Python以外其他语言的等效配置),并将idle_timeout参数设置为更高的值。查看此文档了解更多详细信息:是否可以使用cronjobs来保持实例处于活动状态并防止其在设置的最大时间限制内处于空闲状态?请提供建议。谢谢!您可以这样做,但更简单的是更改应用程序设置,使1个实例始终处于活动状态。
1st Request(Around 1.5 sec)             2nd Request(Around 0.196 sec)
Start Time  1399448227701               Start Time  1399448369720
End Time    1399448229292               End Time    1399448369916