开发者社区> 问答> 正文

ehcache 本地多项目集群:报错

我的服务器是一台,不过里面运行了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>



展开
收起
kun坤 2020-06-06 13:09:06 497 0
1 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud 微服务核心组件集 mica 的设计思路 立即下载
如何利用Redisson分布式化传统Web项目 立即下载
Nacos架构&原理 立即下载