在AppEngine Memcache上添加功能

时间:2011-11-11 16:35:50

标签: python google-app-engine memcached

我使用memcache来存储json,它正在工作。但问题是,如果我多次调用该行,缓存大小会增加:

memcache.Client.add(memcache.Client(),"searchindex",json)

所以我查看了memcache查看器,内容仍然相同,因为我使用的密钥已经在缓存上了。但是,即使缓存的大小继续增加。

1 个答案:

答案 0 :(得分:5)

首先,这是一种调用实例方法的奇怪方法。通常你会这样做:

memcache.Client().add("searchindex", json)

或者简单地说:

memcache.add("searchindex", json)

由于add不会覆盖缓存中已存在的密钥,因此重复调用该密钥不会对应用程序的行为产生任何影响。

这些调用是否会增加缓存大小不应该成为一个问题。 Memcache旨在根据最少使用算法,根据应用程序的需要提供内存。来自惰性的垃圾记忆应该首先被add召唤。