有没有办法在memcache中的实体即将被删除时得到通知?

时间:2014-08-29 21:41:00

标签: google-app-engine

有没有办法知道存储在memcache中的实体何时即将被删除?为了将其持久化为更永久的数据存储区。

2 个答案:

答案 0 :(得分:3)

如果有的话,我会非常惊讶,memcache被设计成一个临时数据存储,可以缓存来自其他来源的数据。通常,memcache的使用方式是当你需要访问数据时,首先检查memcache然后如果没有找到则检查持久存储。在更新中,除了持久存储之外,您还要将更新后的值存储在内存缓存中,或删除内存缓存值并仅将其存储在永久数据存储中,然后在下一次数据检索时将其从永久存储中取出呼叫。使用这种范例,您应该始终期望内存缓存可能包含或不包含您的数据。

答案 1 :(得分:1)

正如jdavidbakr指出的那样,没有办法得到通知。

memcache的最佳实践是如果你在python中使用ndb(因为ndb在推送到数据存储区之前已经检查了memcache,所以如果memcache有所请求的数据,它会点击memcache)。

如果您使用的语言没有ndb,我建议使用任务队列将数据插入数据存储区(即:"将实体推送到内存缓存并创建任务队列以推送到数据存储&#34)。对于检索,首先查看memcache,然后如果实体不在memcache中则转向数据存储区。如果您必须访问数据存储区以获取数据,请将其推回到memcache。