我的服务器是一台,不过里面运行了2个tomcat(项目),里面有一个中心项目,用来管理帐户和权限,另外一个项目是独立项目,不过登录和获取权限是从中心项目的数据库里获取.
那么,问题来了.中心项目更改了,然后被ehcache缓存了.但另外一个项目却不更新缓存.
按照官网的doc配置好了rmi方式集群,还是不行.我想做的是中心项目集中管理用户和权限,更改时,其他项目的缓存也被相应的更改
(其实还有好几个项目,不过都是用同一份代码来登录)
环境windows server 2008 R,JDK 8,Hibernate 4.3.8 ,ehcahe-core 2.6.10
中心项目的配置
<diskStore path="java.io.tmpdir"/> <cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" properties="peerDiscovery=manual,rmiUrls=//localhost:40002/centralCache" /> <cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" properties="hostName=localhost,port=40001,socketTimeoutMillis=2000" /> <defaultCache maxEntriesLocalDisk="10000" maxEntriesLocalHeap="10000" timeToIdleSeconds="1800"> </defaultCache> <cache name="centralCache" maxEntriesLocalDisk="10000" maxEntriesLocalHeap="10000" timeToIdleSeconds="1800"> <cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/> <bootstrapCacheLoaderFactory class="net.sf.ehcache.distribution.RMIBootstrapCacheLoaderFactory"/> </cache>
<diskStore path="java.io.tmpdir"/> <cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" properties="peerDiscovery=manual,rmiUrls=//localhost:40001/centralCache" /> <cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" properties="hostName=localhost,port=40002,socketTimeoutMillis=2000" /> <defaultCache maxEntriesLocalDisk="10000" maxEntriesLocalHeap="10000" timeToIdleSeconds="1800"> </defaultCache> <cache name="centralCache" maxEntriesLocalDisk="10000" maxEntriesLocalHeap="10000" timeToIdleSeconds="1800"> <cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/> <bootstrapCacheLoaderFactory class="net.sf.ehcache.distribution.RMIBootstrapCacheLoaderFactory"/> </cache>
RMI 肯定是行的,Ehcache 还支持组播的方式,详情请看我很早以前在 IBM 上发表的文章
http://www.ibm.com/developerworks/cn/java/j-lo-ehcache/
另外 OSChina 现在在用 J2Cache,不需要过多的配置实现集群存储
######RMI 肯定是行的,Ehcache 还支持组播的方式,详情请看我很早以前在 IBM 上发表的文章
http://www.ibm.com/developerworks/cn/java/j-lo-ehcache/
另外 OSChina 现在在用 J2Cache,不需要过多的配置实现集群存储
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。