2011-03-05 63 views
2

在Python Google App Engine环境中,我有一些应该最终保存的高度不稳定的数据。我会将它存储在一个实例的全局变量中,但我需要注意一下实例正在关闭以便我可以写出来。当GAE实例即将终止时是否有通知?

有没有这样的回调或安装挂钩的地方?

(内存缓存是一种选择,但我并不需要实例之间一致性的开销,同时也分享消失无预警的问题)

(关于使用全局变量一个可以读取约Cachepy谷歌食谱。)

回答

2

你可能想看看gae-sessions如何工作。它将会话中间件添加到wsgi应用程序,以便数据在每个请求结束时保留。

你可以给一个惟一的ID,当它启动时,总​​是挥发数据写入到实体,与独特的ID作为键名,在每次请求结束。你最终会做更多的写操作,但是你永远不会丢失数据到崩溃或终止的实例。你永远不需要将数据读入实例,因为它会持续实例的一生(我认为)。

+0

这真的有无关的会议,这是面向用户的。你的建议等同于将数据存储在数据存储中。 – 2011-03-07 23:54:01

+0

我只是指的GAE会话作为在请求结束写入数据的代码的例子。由于在实例死亡时没有通知,所以最好的解决方案是始终在请求结束时写入实例的数据。 – Calvin 2011-03-08 07:38:53

1

GAE为此提供关闭处理程序。看一看这部分here(在这种情况下围棋)

相关问题