Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 即使经过很长一段时间,我如何使jgroup重新连接?_Java_Jgroups - Fatal编程技术网

Java 即使经过很长一段时间,我如何使jgroup重新连接?

Java 即使经过很长一段时间,我如何使jgroup重新连接?,java,jgroups,Java,Jgroups,因此,我们遇到了一个问题:渗透检查器运行12小时左右会导致Jgroups断开连接,从机无法重新加入群集,大脑分裂,以及其他一些表示缺少复制的问题,并且无法恢复 <config xmlns="urn:org:jgroups" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema

因此,我们遇到了一个问题:渗透检查器运行12小时左右会导致Jgroups断开连接,从机无法重新加入群集,大脑分裂,以及其他一些表示缺少复制的问题,并且无法恢复

<config xmlns="urn:org:jgroups"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/JGroups-3.6.xsd">
   <TCP bind_addr="NON_LOOPBACK"
        bind_port="${infinispan.jgroups.bindPort}"
        enable_diagnostics="false"
        thread_naming_pattern="pl"
        send_buf_size="640k"
        sock_conn_timeout="300"

        thread_pool.min_threads="${jgroups.thread_pool.min_threads:2}"
        thread_pool.max_threads="${jgroups.thread_pool.max_threads:30}"
        thread_pool.keep_alive_time="60000"
        thread_pool.queue_enabled="false"

        internal_thread_pool.min_threads="${jgroups.internal_thread_pool.min_threads:5}"
        internal_thread_pool.max_threads="${jgroups.internal_thread_pool.max_threads:20}"
        internal_thread_pool.keep_alive_time="60000"
        internal_thread_pool.queue_enabled="true"
        internal_thread_pool.queue_max_size="500"

        oob_thread_pool.min_threads="${jgroups.oob_thread_pool.min_threads:20}"
        oob_thread_pool.max_threads="${jgroups.oob_thread_pool.max_threads:200}"
        oob_thread_pool.keep_alive_time="60000"
        oob_thread_pool.queue_enabled="false"
   />
   <TCPPING async_discovery="true"
            initial_hosts="${infinispan.jgroups.tcpping.initialhosts}"
            port_range="1"/>
   />
   <MERGE3 min_interval="10000" 
           max_interval="30000" 
   />
   <FD_SOCK />
   <FD />
   <VERIFY_SUSPECT />
   <pbcast.NAKACK2 use_mcast_xmit="false"
                   xmit_interval="1000"
                   xmit_table_num_rows="50"
                   xmit_table_msgs_per_row="1024"
                   xmit_table_max_compaction_time="30000"
                   max_msg_batch_size="100"
                   resend_last_seqno="true"
   />
   <UNICAST3 xmit_interval="500"
             xmit_table_num_rows="50"
             xmit_table_msgs_per_row="1024"
             xmit_table_max_compaction_time="30000"
             max_msg_batch_size="100"
             conn_expiry_timeout="0"
   />
   <pbcast.STABLE stability_delay="500"
                  desired_avg_gossip="5000"
                  max_bytes="1M"
   />
   <pbcast.GMS print_local_addr="true"  join_timeout="15000"/>
   <pbcast.FLUSH />
   <FRAG2 />
</config>
我想知道我们是否可以更改jgroups配置,以便集群节点最终能够重新加入。即使在12小时的“攻击”之后,我们也不必重新启动服务器。

请先为我定义断开连接

关于您的堆栈,我有一些建议/问题:

  • 我通常建议使用您使用的版本中的
    tcp.xml
    ,然后根据您的需要进行修改
  • TCping:初始_主机是否包含所有集群成员
  • 用FD_ALL替换FD
  • 稳定:5s的期望值有点小;这会产生超过需要的流量
  • GMS.join_超时15s相当高;这是第一个成员的启动时间,它还影响发现时间
  • 你要冲水干什么
已断开连接,服务器已通过故障检测,并最终将节点从组中删除
tcp.xml
我知道这是从infinispan在8.1.0中的任何内容复制和修改的。是的;FD_ALL,实际上在发布这篇文章后,我把它改成了FD_ALL 2,但这还没有通过制作
GMS.join_timeout
,我们的服务器需要很长时间才能启动(至少60秒),这可能就是原因。FLUSH,我们可能没有复制收到的警告…
[WARN][2017.03.05 10:29:05]impl.DispatchMessageSender-HSEARCH200010:FLUSH不在您的JGroups堆栈中!需要刷新以确保在新节点加入集群时不会删除消息。将继续,但可能会出现不一致向HSEARCH的人发出同花顺警告。我记得Infinispan的一个非常古老的版本需要它,但现在不应该是这样了。是的,也许,我认为我们在Infinispan 8.1.0,hibernate search 5.3上,这个警告发生在本周。。。我不认为那是古老的。。。奇怪的是,我只是添加了同花顺来处理它,也许我应该停止它。更新了关于我所说的断开连接的意思,希望它能让senseI注意到
tcp.xml
使用
FD
而不是
FD\u ALL
。。。但是
tcp nio.xml
使用
FD_ALL
,我应该使用
tcp nio
作为基础吗?
jgroups 3.6.13
infinispan 8.1.0, 
hibernate search 5.3