EhCache 是进程中的缓存系统,一旦将应用部署在集群环境中,每个节点维护各自的缓存数据,当某个节点对缓存数据进行更新,这些更新的数据没法在其它节点中共享, 这不只会下降节点运行的效率,并且会致使数据不一样步的状况发生。使用Terracotta Server能够实现Ehcache的集群. 而针对集群之间数据同步的问题, Terracotta提供了WAN replication的方案.缓存
使用时只须要在Ehcache配置文件配置便可, 而后系统会自动在不一样集群之间同步数据. 主要特性:网络
消息缓冲异步
解决冲突分布式
失效恢复spa
使用ActiveMQ,支持topic,queue队列
异步通讯等等进程
数据同步的范围:rem
put部署
remove同步
removeAll
不一样集群使用同一个Active Terracotta Server Array,而后保证Passive Terracotta Server Array的数据同步. 这种方式对集群之间的网络要求较高.
不一样的集群拥有独自的TSA, 但同步自身TSA的同时,还须要同步其它集群的TSA. 这种方式线路适合写操做比较少的应用.
自定义一个replicator,从本地集群中提取更新的数据,以消息的形式发送到其它结点上. 如:在集群中使用基于ActiveMQ(AMQ)的消息队列,实现不一样集群数据的同步. 这种方式实现起来更有弹性,高吞吐量,低等等. 写操做快. 只须要实现一个message bus.