我需要确保一些代码在GAE实例启动时被初始化。有没有办法在代码中检测到这个请求是一个“加载请求”?
我尝试将初始化代码添加到我的预热处理程序中,但似乎不能保证调用预热。我还尝试在我的应用程序中为每个服务提供一个空闲实例,以增加预热被调用的机会。
发布于 2019-05-10 11:30:01
注意:这个答案是在考虑到python 2.7标准环境的情况下编写的,我不确定是否可以在所有其他语言/运行时中使用相同的工具,以及它是如何工作的。
实际上,如果配置了预热请求,则仅当服务至少有一个实例在运行时才有效,但情况并不总是如此。
您可以将所需的初始化代码放在声明服务应用程序的主服务文件中-该代码仅在服务应用程序初始化时执行,这在每个实例生命周期中只发生一次,无论请求是加载还是预热。
大致是这样的:
import ...
def my_desired_init_function():
pass # replace with what you need to do
my_desired_init_function()
app = webapp2.WSGIApplication(...)https://stackoverflow.com/questions/56069507
复制相似问题