我知道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。

JBoss 系列四十八:JBoss 7/WildFly 使用TCP构建集群的更多相关文章

  1. 菜鸟玩云计算之十八:Hadoop 2.5.0 HA 集群安装第1章

    菜鸟玩云计算之十八:Hadoop 2.5.0 HA 集群安装第1章 cheungmine, 2014-10-25 0 引言 在生产环境上安装Hadoop高可用集群一直是一个需要极度耐心和体力的细致工作 ...

  2. JBoss 系列四十九:JBoss 7/WildFly 中端口使用列表

    JBoss 7中端口使用列表 JBoss 7中所有配置都在一个文件中(standaone*.xml, domain.xml),和之前的JBoss相比JBoss 7用到的端口变少,我们将以表格的形式列出 ...

  3. 《手把手教你》系列技巧篇(四十八)-java+ selenium自动化测试-判断元素是否可操作(详解教程)

    1.简介 webdriver有三种判断元素状态的方法,分别是isEnabled,isSelected 和 isDisplayed,其中isSelected在前面的内容中已经简单的介绍了,isSelec ...

  4. SQL注入之Sqli-labs系列第四十七关,第四十八关,第四十九关(ORDER BY注入)

    0x1 源码区别点 将id变为字符型:$sql = "SELECT * FROM users ORDER BY '$id'"; 0x2实例测试 (1)and rand相结合的方式 ...

  5. Web 前端开发人员和设计师必读文章推荐【系列二十八】

    <Web 前端开发精华文章推荐>2014年第7期(总第28期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  6. NeHe OpenGL教程 第四十八课:轨迹球

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  7. OSGi 系列(十八)之 基于注解的 Blueprint

    OSGi 系列(十八)之 基于注解的 Blueprint 1. 注解实现 blueprint 第一步:bundle 添加 Bundle-Blueprint-Annotation <plugin& ...

  8. Java 设计模式系列(十八)备忘录模式(Memento)

    Java 设计模式系列(十八)备忘录模式(Memento) 备忘录模式又叫做快照模式(Snapshot Pattern)或Token模式,是对象的行为模式.备忘录对象是一个用来存储另外一个对象内部状态 ...

  9. 第四十八个知识点:TPM的目的和使用方法

    第四十八个知识点:TPM的目的和使用方法 在检查TPM目的之前,值得去尝试理解TPM设计出来的目的是为了克服什么样的问题.真正的问题是信任.信任什么?首先内存和软件运行在电脑上.这些东西能直接的通过操 ...

随机推荐

  1. 8. js中json格式解析

    var doc = O_PARAMETER.FJSonStr;(doc为:{"items":[],"nextId":0}) //1.先转为json对象,主要有以 ...

  2. Oracle中 Package与Package body的介绍

    1.Oracle Package的作用: 可以简化应用设计.提高应用性能.实现信息隐藏.子程序重载 2.ORACLE中的function   .package.package   bodies.pro ...

  3. {Reship}{Matting}Image Matting

    ======================================== http://www.alphamatting.com/index.html ==================== ...

  4. eclipse 使用

  5. 现成的HTML5框架

    1>sencha-touch 2>phoneGap 3>jQuery mobile 4>bootstrap

  6. HDU 2222 Keywords Search(AC自动机入门)

    题意:给出若干个单词和一段文本,问有多少个单词出现在其中.如果两个单词是相同的,得算两个单词的贡献. 分析:直接就是AC自动机的模板了. 具体见代码: #include <stdio.h> ...

  7. spi_flash

    http://blog.chinaunix.net/uid-27406766-id-3384699.html

  8. Factstone Benchmark

    [问题描述] Amtel已经宣布,到2010年,它将发行128位计算机芯片:到2020年,它将发行256位计算机:等等,Amtel坚持每持续十年将其字大小翻一番的战略.(Amtel于2000年发行了6 ...

  9. DataGridView的DataGridViewComboBoxColumn列在编辑时自动弹出下拉列表

    在DataGridView的CellEnter的事件中添加如下代码即可: if (e.ColumnIndex == dataGridView1.Columns["仓库名"].Ind ...

  10. Selenium2+python自动化12-操作元素(键盘和鼠标事件)

    前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...