Python 在GAE中检测从memache/内存卸载的对象

Python 在GAE中检测从memache/内存卸载的对象,python,google-app-engine,memcached,Python,Google App Engine,Memcached,我想操作内存/memcache中的一些数据。重要的是,我不想丢失这些数据,所以当GAE决定将其从内存中卸载时,我希望将其保存到持久性存储器中 我说的对吗?无法检测GAE的memcached对象卸载事件 我是否仍可以重写\uu del\uu()以将全局变量的值保存到数据存储?(我很难证实这件事。)很抱歉,但这完全是错误的做法。正确的做法是将数据写入数据存储和memcache,然后尝试从memcache读取数据,如果没有,则从数据存储读取数据并将其写回memcache 超载\uu del\uuu也是

我想操作内存/memcache中的一些数据。重要的是,我不想丢失这些数据,所以当GAE决定将其从内存中卸载时,我希望将其保存到持久性存储器中

我说的对吗?无法检测GAE的memcached对象卸载事件


我是否仍可以重写
\uu del\uu()
以将全局变量的值保存到数据存储?(我很难证实这件事。)

很抱歉,但这完全是错误的做法。正确的做法是将数据写入数据存储和memcache,然后尝试从memcache读取数据,如果没有,则从数据存储读取数据并将其写回memcache

超载
\uu del\uuu
也是一个坏主意;一般来说,这是一个糟糕的主意,而出于这个目的,这是灾难性的,因为有很多原因可以解释为什么您的进程可能会在不调用任何
\uuu del\uu
方法的情况下终止。(例如,内存严重不足、Python或Linux内核硬崩溃、硬件故障等。)


如果您想用一种简单的方式集成memcache和Data Store,而不必考虑它,请尝试一下——它可以透明地为您实现这一点。

很抱歉,但这完全是错误的做法。正确的做法是将数据写入数据存储和memcache,然后尝试从memcache读取数据,如果没有,则从数据存储读取数据并将其写回memcache

超载
\uu del\uuu
也是一个坏主意;一般来说,这是一个糟糕的主意,而出于这个目的,这是灾难性的,因为有很多原因可以解释为什么您的进程可能会在不调用任何
\uuu del\uu
方法的情况下终止。(例如,内存严重不足、Python或Linux内核硬崩溃、硬件故障等。)

如果您想用一种简单的方式集成memcache和datastore,而不必考虑它,请尝试——它可以透明地为您实现这一点