zoukankan      html  css  js  c++  java
  • JBoss 系列四十八:JBoss 7/WildFly 使用TCP构建集群

    我知道JBoss 集群Default 的设定就是UDP(JGroups),但在实际环境中的网络环境时常不允许UDP,在这种情况下,我们就需要使用TCP。

    JBoss 7/WildFly 中负责集群的主要模块是JGroups 跟 Infinispan,而控制Cluster里面的node跟集群中其他节点通信沟通的就是JGroups,所以,不管你今天用的是Standalone或是domain,只要找到jgroups的subsystem修改,就OK了,如下:

    • 将default-stack 由 udp 改为 tcp:
    <subsystem default-stack="udp" xmlns="urn:jboss:domain:jgroups:1.1">
      .....
    </subsystem>
    


    改为 tcp

    <subsystem default-stack="tcp" xmlns="urn:jboss:domain:jgroups:1.1">
      .....
    </subsystem>
    
    • 将原先使用MPING 的设定移除
    <subsystem default-stack="tcp" xmlns="urn:jboss:domain:jgroups:1.1">
      <stack name="udp">
         .....
      </stack>
      <stack name="tcp">
         <transport socket-binding="jgroups-tcp" type="TCP"></transport>
         <!--<protocol type="MPING" socket-binding="jgroups-mping"/>-->
      </stack>
     </subsystem>
    
    • 加上TCPPING的参数
    <subsystem default-stack="tcp" xmlns="urn:jboss:domain:jgroups:1.1">
      <stack name="udp">
         .....
      </stack>
      <stack name="tcp">
         <transport socket-binding="jgroups-tcp" type="TCP"></transport>
         <protocol type="TCPPING">
            <property name="initial_hosts">172.16.1.77[7600],172.16.1.79[7600]</property>
            <property name="num_initial_members">2</property>
            <property name="port_range">0</property>
            <property name="timeout">2000</property>
         </protocol>
      </stack>
     </subsystem>
    


    其中:

    • initial_hosts =所有你想要加入的集群机器IP与PORT号
    • num_initial_members = Cluster最多加入多少台机器数量
    • port_range = 你要搜寻机器可以Ping到port 的范围
    • timeout = 设定timeout时间(毫秒ms)

    到此我们完成切换默认的UDP到TCP。

  • 相关阅读:
    C#来完成二叉树的搜索、遍历、及查找
    给大家推荐个学英语的网站
    我一直在心酸——有感于512大地震
    LINQ基础(一)
    再谈奶牛问题
    【转】程序员的十层楼,你属于哪一层?
    c#实现根据有规律的文件内容解析成实体类
    c#多线程操作界面控件的简单实现
    不要迷恋哥,哥不只是传说(再【转】世界上最牛的程序员)
    c#简单实现提取网页内容
  • 原文地址:https://www.cnblogs.com/riskyer/p/3424187.html
Copyright © 2011-2022 走看看