EHCache分布式缓存集群环境配置

ehcache提供三种网络连接策略来实现集群rmi,jgroup还有jms。这里楼主只讲通过RMI的方式来实现:

第一步:配置文件ehcache.xml

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd">

<!--采用自动同步缓存的方式,自动同步每台服务器都是一样的配置-->
<cacheManagerPeerProviderFactory
class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
properties="peerDiscovery=automatic,

        multicastGroupAddress=230.0.0.1,
        multicastGroupPort=4446, timeToLive=32" />

   <!--配置监听集群中缓存消息的分发-->

<cacheManagerPeerListenerFactory
class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
properties="hostName=172.28.28.137
--服务器ip地址,对应你的服务器ip地址

,port=40001,--端口不能变,具体原因我也不知道待研究

socketTimeoutMillis=120000" --连接超时时间

/>

<!--配置所有缓存默认配置-->
<defaultCache maxElementsInMemory="1000" eternal="false"
timeToIdleSeconds="120" timeToLiveSeconds="120" overflowToDisk="true"
diskSpoolBufferSizeMB="30" maxElementsOnDisk="100000" diskPersistent="false"
diskExpiryThreadIntervalSeconds="120" memoryStoreEvictionPolicy="LRU">
<cacheEventListenerFactory
class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
</defaultCache>

<!--配置缓存-->
<cache name="User" maxElementsInMemory="100" eternal="false"
timeToIdleSeconds="100" timeToLiveSeconds="100" overflowToDisk="false">
<cacheEventListenerFactory
class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" />
</cache>
</ehcache>

第二步:java代码

写缓存代码:

URL url = CacheManage.class.getClassLoader().getResource("ehcache.xml");
CacheManager cacheManage = CacheManager.create(url);

Cache cache =cacheManage .getCache("User");
Element ele = new Element("userId","我是一只小鸟");
cache.put(ele);

取缓存代码:

URL url = CacheManage.class.getClassLoader().getResource("ehcache.xml");
CacheManager cacheManage = CacheManager.create(url);

Cache cache = cacheManage .getCache("User");
String s = cache.get("userId").getValue().toString();
out.print(s);

具体属性什么意思 很多博客都有了我就不说了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值