因此,我们遇到一个问题,即渗透检查程序运行了12个小时左右会导致Jgroups断开连接,然后它无法恢复。

显然,我们需要fix Jgroups so that it does recover,但是如果Jgroups关闭,我也不希望负载均衡器将其视为服务器启动。我已经找到了如何与负载均衡器进行通信的方法,但是在确定如何实际检查通道通信的运行状况时遇到了问题,特别是因为Infininispan负责创建它们(它本身是由休眠/搜索)。

我想如果可以使用Channel的话,我可以使用它们,尽管可能有更好的方法,但是我看不到获得渠道的方法。好吧,我确实找到了this,它说明了如何从DefaultCacheManager获取通道,但这只是一个问题,即如何获取该缓存管理器。我们使用的是Spring,它似乎没有在jndi中定义,因此,初始化此东西的参数只是传递给hibernate的xml配置。注意:没有应用服务器,只有Tomcat和Spring 4。

jgroups 3.6.13
infinispan 8.1.0,
hibernate search 5.3


如何检查Jgroups中的通道是否已连接?

最佳答案

最新的Infinispan版本包含所谓的HealthCheckAPI,它可以完全满足您的需求:http://blog.infinispan.org/2017/03/checking-infinispan-cluster-health-and.html

10-04 13:40