我正在 Google AppEngine 上开发一个项目,我正在使用数据存储和内存缓存。出于测试目的,我转到控制面板,更改并保存数据存储中一些已保存实体的一些值。但是,由于它们已经在内存缓存中,我认为这些更改不会反映在应用程序上。使用管理/控制面板,有没有办法强制将这些实体从数据存储区重新加载到内存缓存中,或者至少清除内存缓存?
谢谢你,哈泽姆
我正在 Google AppEngine 上开发一个项目,我正在使用数据存储和内存缓存。出于测试目的,我转到控制面板,更改并保存数据存储中一些已保存实体的一些值。但是,由于它们已经在内存缓存中,我认为这些更改不会反映在应用程序上。使用管理/控制面板,有没有办法强制将这些实体从数据存储区重新加载到内存缓存中,或者至少清除内存缓存?
谢谢你,哈泽姆
随着今天 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 已经完成,我可以确认它包含内存缓存控制面板。
作为替代方案:我相信您可以使用Remote API,启动外壳并执行例如memcache.flush_all()
不,没有。制作一个为您执行此操作的处理程序,当您需要刷新 memcache 时,您只需点击该 url