java - EhCache 分布式驱逐的推荐最佳实践?

标签 java caching jvm ehcache distributed-computing

我有多个节点运行 JVM Spring 应用程序,使用 ehcache 进行本地缓存。

我想从社区中找出在该节点集群中正确地对特定元素进行缓存逐出的最佳实践。例如,如果在节点 1 上,我们意识到需要逐出 id 123 的项目(或使用 CachePut 进行更新),那么我们也需要在所有其他节点上逐出(或 CachePut )。

我当前的做法是节点 1 使用 Redis Pub/Sub 通知所有其他节点,强制所有节点驱逐 id 123 的项目。

这是一个好方法还是业界有更好的实践?

我正在阅读,似乎跨节点进行 ehcache 复制可能是另一种选择?

我很想听听其他人对此有何看法。

谢谢 是

最佳答案

分布式缓存框架提供了同步方法。当使用 Terracotta 集群时,Ehcache 将确保当客户端之一完成修改时所有近缓存都不会过时。

底线,一个好的缓存框架应该为您处理这个问题。

关于java - EhCache 分布式驱逐的推荐最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42591338/

相关文章:

java - 使用Android源代码

java - 日期格式转换为 21 世纪日期

java - java应用程序的系统内存使用量与堆使用量相比巨大

java - JVM catch InterruptedException 时是否需要退出

java - 如何合并两个 Hibernate 查询?

java - 从不同的 gradle 模块导入类

c# - HttpWebRequest.CachePolicy : questions about caching

c# - 缓存友好优化 : Object oriented matrix multiplication and in-function tiled matrix multiplication

android - 在 android 中为 google maps api v2 tile provider 缓存国家 OSM map

map - clojure map 功能急切?