DEBUG net.sf.ehcache.CacheManager - Attempting to create an existing singlet

DEBUG net.sf.ehcache.CacheManager - Attempting to create an existing singleton. Existing singleton returned.
前端按钮点击后,显示这个bug,后台启动前,能正常使用,启动后,就不行。重新拉取项目,重新部署,无效。ehcache的updateCheck添加了的。

  • 这篇博客: 集群间部署 Ehcache 实战中的 2.2.2 cacheManagerPeerListenerFactory 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • cacheManagerPeerListenerFactory 是用来监听从集群发送过来的信息,有 class 与 properties 两个属性。配置 CacheManagerPeerListener 需要指定一个 CacheManagerPeerListenerFactory,它以插件的机制实现。
    Ehcache 有一个内置的基于 RMI 的分布系统。它的监听器是 RMICacheManagerPeerListener,这个监听器可以用 RMICacheManagerPeerListenerFactory 来配置。配置如下:

    <cacheManagerPeerListenerFactory
        class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
        properties="port=40001,socketTimeoutMillis=2000" />
    

    属性内容如下:

    • hostname: 运行监听器的服务器名称。该项是可选项,标明了做为集群群组的成员的地址,同时也是你想要控制的从集群中接收消息的接口。
      • 在 CacheManager 初始化的时候,会检查 hostname 是否可用;
      • 如果 hostName 不可用,CacheManager 将拒绝启动并抛出一个连接被拒绝的异常。
      • 如果没有指定 hostName,hostName 将用 InetAddress.getLocalHost().getHostAddress() 来得到。
    • port: 监听器监听的端口。
    • socketTimeoutMillis: Socket 超时的时间,默认值是 2000ms。
      • 注:当 socket 同步缓存请求地址比较远,即不是本地局域网时,可能需要把这个时间配置大些,不然很可能延时导致同步缓存失败。