我使用 EHCache + JGroups 在 3 个 tomcat 实例上复制我的 webapps 缓存。
<!-- Use jgroups (UDP) to replicate cache among the cluster -->
<cacheManagerPeerProviderFactory
class="net.sf.ehcache.distribution.jgroups.JGroupsCacheManagerPeerProviderFactory"
properties="channelName=EH_CACHE_STA::connect=UDP(mcast_addr=229.10.10.10;mcast_port=45567;):PING:MERGE2:FD_SOCK:VERIFY_SUSPECT:pbcast.NAKACK:UNICAST:pbcast.STABLE:FRAG:pbcast.GMS"
propertySeparator="::" />
有时,tomcat 实例不会重新启动。在 jgroups 日志中,我可以看到:
[webapp] WARN 2012-12-14 15:36:55,784 [GMS] : join(tc-fr-sta-tomcat1-32427) sent to b0dc40aa-12aa-4045-01e4-c80b013dbb13 timed out (after 5000 ms), retrying
[webapp] WARN 2012-12-14 15:36:55,785 [UDP] : tc-fr-sta-tomcat1-32427: no physical address for b0dc40aa-12aa-4045-01e4-c80b013dbb13, dropping message
似乎节点试图加入自己????我们必须重新启动生产中的所有 tomcat 才能恢复集群。有人可以帮我解决这个问题吗?