【发布时间】:2015-04-15 11:36:15
【问题描述】:
有谁知道是否有任何理由不在 Google App Engine 上使用 Google Guava Cache 库。
https://code.google.com/p/guava-libraries/wiki/CachesExplained
特别是使用驱逐监听器。我担心的是缓存不会跨实例复制。
用例将因此创建一个缓存:
LoadingCache<Key, Graph> graphs = CacheBuilder.newBuilder()
.maximumSize(1000)
.expireAfterWrite(10, TimeUnit.MINUTES)
.removalListener(MY_LISTENER)
.build();
在发布到 http servlet 时,将缓存用于后续发布,并在删除时采取一些措施。我担心应用引擎处理缓存的方式存在一些细微差别,以及在应用引擎文档中没有提到使用驱逐侦听器的方式:https://cloud.google.com/appengine/docs/java/memcache/ 与它在 Guava Docs 中的完成方式相比。
更新:
从一些测试看来,google guava 缓存在 GAE 上不起作用 - 并且缓存在事务结束时被驱逐(30 秒左右)
提前致谢。
【问题讨论】:
标签: java google-app-engine caching guava