我正在Google AppEngine上开展一个项目,我正在使用数据存储区和内存缓存。出于测试目的,我转到控制面板,更改并保存数据存储区中某些已保存实体的某些值。但是,由于它们已经在memcache中,我认为,这些更改并未反映在应用程序上。 使用管理员/控制面板,有没有办法强制从数据存储区重新将这些实体重新加载到内存缓存中,或者至少清除内存缓存?
谢谢你, 哈齐姆
答案 0 :(得分:6)
随着SDK 1.6.4的发布,今天在生产管理仪表板中添加了一个memcache页面。它有一个按钮,可以让你刷新内存缓存(以及其他功能)。
这无法解决自动管理实体的memcache版本的问题。为此,您可以查看NDB库(SDK 1.6.4中的新标准库),它会在您使用实体时自动缓存您的实体,并在必要时使缓存无效。它还有很多其他功能。我还没有使用它,但它听起来确实不错:http://code.google.com/appengine/docs/python/ndb/
3月27日更新现在SDK 1.6.4已经完成,我可以确认它包含了memcache控制面板。
答案 1 :(得分:6)
作为替代方案:我相信你可以使用Remote API,启动一个shell并执行例如memcache.flush_all()
答案 2 :(得分:0)
没有。 为你做一个处理程序,当你需要刷新memcache时,你可以简单地点击那个URL