关闭JBoss热部署服务?

时间:2010-06-07 21:00:40

标签: deployment jboss application-server

关闭JBoss热部署服务的正确方法是什么?

这是一个生产环境。

编辑:JBoss版本5.1.0 GA

4 个答案:

答案 0 :(得分:3)

我认为删除“deploy / hdscanner-jboss-beans.xml”文件是正确的方法。

答案 1 :(得分:3)

来自JBoss in Action,ch。 3.1.5:

  

通过deployers.xml和profile.xml描述符文件配置部署程序,   两者都在server / xxx / conf目录中找到。该文件定义了几个POJO   管理各种部署职责。表3.3列出了每个POJO   并重点介绍了一些更有趣的配置属性   每一个。 [...]

表中的相关位:

  

Bean:HDScanner

     
      
  • 属性:scanEnabled - 将其设置为true(默认值)以启用hot   deployer和false以禁用它。设置为时   false,应用程序仅在部署时部署   服务器启动或部署方法时   调用MainDeployer MBean。

  •   
  • 属性:scanPeriod - 热部署程序的毫秒数   在执行扫描之间等待。默认是   5000毫秒(5秒)。这个值是   如果scanEnabled设置为false,则忽略。

  •   
  • 属性:scanThreadName - 您可以使用它来更改名称   线程来自默认的HDScanner。线程   name使您可以识别热部署程序   线程,如果您应该进行线程转储。

  •   

答案 2 :(得分:2)

您可以使用JMX禁用和公开它:

<bean name="HDScanner" class="org.jboss.system.server.profileservice.hotdeploy.HDScanner">
    <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.deployment:service=HDScanner", exposedInterface=org.jboss.system.server.profileservice.hotdeploy.Scanner, registerDirectly=false)</annotation>
    <start method="start" ignored="true" />    
    <property name="deployer"><inject bean="ProfileServiceDeployer"/></property>
    <property name="profileService"><inject bean="ProfileService"/></property>
    <property name="scanPeriod">5000</property>
    <property name="scanThreadName">HDScanner</property>
    <property name="scanEnabled">false</property>
</bean>

答案 3 :(得分:0)

属性:JBoss 5.x上不存在scanEnabled仅适用于部署扫描程序的JBoss 4.x. 在JBoss 5.x上,只需从deploy目录中删除hdscanner-jboss-beans.xml,然后使用MainDeployer MBean来部署应用程序。