zoukankan      html  css  js  c++  java
  • 一台机器运行多个JBoss 4.2.3多实例,或多个同一版

    http://www.java123.net/v/426419.html     暂未验证

    今天应用更新,放到测试服务器上打算测试。测试服务器上有个jboss4.2.3有项目在跑,我是功能改造又不想影响现有的环境。于是就想复制一份jboss4.2.3 将打包的应用放上去。但是已启动好多JVM_Bind,端口号冲突啥的。网上查查资料修改端口号折腾好久还是一团糟。jboss不像tomcat,Tomcat只需要修改两三个端口即可,而JBoss手工修改不但繁琐而且极易出错,尤其是实例多的话。

    网上搜到一个帖子解决了这问题,也让我学习了:

    JBoss提供了一种简便的方法:Binding Manager服务,不需要繁琐的端口配置就可以实现多实例运行端口不冲突,详细步骤如下:
    以JBoss 4.2.3 GA为例,%JBOSS_HOME%docsexamplesinding-managersample-bindings.xml,该文件默认情况下定义了4组不同的端口配置(port-default、port-01、port-02、port-03),也就是说默认情况下支持同一台机器部署4个JBoss实例。将server应用下的default复制一份改名为node2.
    1、node2配置如下:
    修改node2/conf/jboss-service.xml文件,配置Service Binding(默认注释,取消注视修改ports-01/ports-02/ports-03即可)如下:
    name="jboss.system:service=ServiceBindingManager">
    ports-01    <!--Jboss 已在 %JBOSS_HOME%docsexamplesinding-managersample-bindings.xml 配置-->
    ${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml
    org.jboss.services.binding.XMLServicesStoreFactory
    这里配置node2使用的是port-01端口配置。
    2、server/default 采用默认端口ServerName="ports-default",正常启动即可,这种情况下使用的是JBoss提供的默认端口8080、8009等,也可以参照第一步的配置,只需修改"ServerName=ports-02"即可,注意只能是在sample-bindings.xml中定义的四组端口范围内。
    3、启动实例

    在jbossin目录下新建start-x.bat。内容如下:
    run.bat -c node1 -b 192.168.10.100
    run.bat -c node2 -b 192.168.10.100  
    【补充】关闭实例
    shutdown -s 192.168.10.100:1099
    shutdown -s 192.168.10.100:1199
    4、访问地址
    node1访问地址:http://192.168.10.100:8080(默认不配置的情况)或者http://192.168.10.100:8280(使用port-02的情况)
    node2访问地址:http://192.168.10.100:8180(使用port-01的情况)
    大家也许注意到端口的规律,默认情况下是8080,其它实例的端口依次在8080的基础上增大100,对应关系如下:
    port-default     8080
    port-01           8180
    port-02           8280
    port-03           8380
    当然其他端口如AJP协议端口8009也分别变成8109、8209、8309、8409,其它以此类推。
    5、注意事项
    1)上述配置的前提是每个实例的server.xml中HTTP协议的端口配置均为默认的8080,若该端口修改过,则需要修改sample-bindings.xml中port-default中的默认8080端口为server.xml中HTTP协议端口。
    2)上述方法也同样适用于同一台机器上面部署多个JBoss的情况而不是同一个JBoss下多个置。
    3)一般情况下默认的4组端口足够使用,若仍不够,可自行添加其他port组。
    4)若可能,仍是推荐不用的实例绑定到不同的IP地址上。
    PS.
    同一机器多JBoss实例常用场景:
    1)32位JVM限制无法使用超过2G的内存,通过多实例可以充分利用服务器上大内存。
    2)不用JBoss实例用于不同用途:开发环境、测试环境等。
    3)希望在同一个机器上部署不同版本的JBoss。
    4)希望在同一个机器上部署基于不同JVM的JBoss(不同应用对JVM要求不一样的情况)。

    6.也可复制整个jboss4.2.3为 jboss4.2.3b,也将default应用复制一份改下serverName。将serverName目录下的/conf/jboss-service.xml 的ServiceBindingManager从注释中放出来。新建个bat,配置下你的servername,其实效果和上述放同一个jboss目录下的效果一致。只是看的层次比较清晰些!

  • 相关阅读:
    将execl转换成pdf文件
    exBSGS模板
    fhqtreap的学习笔记
    bzoj3196: Tyvj 1730 二逼平衡树
    bzoj2226[Spoj 5971] LCMSum
    bzoj2120: 数颜色
    bzoj3236: [Ahoi2013]作业
    bzoj3208: 花神的秒题计划Ⅰ
    bzoj4143: [AMPPZ2014]The Lawyer
    bzoj1968: [Ahoi2005]COMMON 约数研究
  • 原文地址:https://www.cnblogs.com/lteal/p/4449484.html
Copyright © 2011-2022 走看看