이 콘텐츠는 선택한 언어로 제공되지 않습니다.

Chapter 5. Configuration


The Java Message Service (JMS) API specifies how a messaging client interacts with a messaging server. How messaging services such as message destinations and connection factories are defined and implemented depends on the JMS provider. JBoss Messaging has its own files for service configuration.
This chapter shows you how to configure various services available in JBoss Messaging that work together to provide JMS API-level services to client applications.
JBoss Messaging configuration is divided between several configuration files. Depending on the type of service provided, configuration information is divided between messaging-service.xml, remoting-bisocket-service.xml, <your database type>-persistence-service.xml, connection-factories-service.xml and destinations-service.xml. These files can all be found in the $JBOSS_HOME/server/$PROFILE/deploy/messaging directory.
AOP interceptor stacks can be configured in aop-messaging-client.xml (for client-side behavior) and aop-messaging-server.xml (for server-side behavior). There is usually no need to change these files, but some interceptors can be removed to improve performance if they are not required. Ensure that you have considered the security implications before removing the security interceptor.

5.1. Configuring the ServerPeer

The ServerPeer is the heart of the JBoss Messaging JMS facade. You can configure its behavior by altering $JBOSS_HOME/server/$PROFILE/deploy/messaging/messaging-service.xml.
All JBoss Messaging services are based in the ServerPeer.
An example of a Server Peer configuration is presented below. Note that not all values for the server peer's attributes are specified in the example
<!-- ServerPeer MBean configuration
    ============================== -->

<mbean code="org.jboss.jms.server.ServerPeer"
  name="jboss.messaging:service=ServerPeer"
  xmbean-dd="xmdesc/ServerPeer-xmbean.xml">

  <!--The unique id of the server peer - in a cluster each node 
      MUST have a unique value - must be an integer-->

  <attribute name="ServerPeerID">
    ${jboss.messaging.ServerPeerID:0}
  </attribute>
  
  <!--The default JNDI context to use for queues when they are 
      deployed without specifying one--> 
  
  <attribute name="DefaultQueueJNDIContext">/queue</attribute>
  
  <!--The default JNDI context to use for topics when they are 
      deployed without specifying one --> 
  
  <attribute name="DefaultTopicJNDIContext">/topic</attribute>

  <attribute name="PostOffice">
    jboss.messaging:service=PostOffice
  </attribute>

  <!-- The default Dead Letter Queue (DLQ) to use for destinations.
       This can be overridden on a per destinatin basis -->
  
  <attribute name="DefaultDLQ">
    jboss.messaging.destination:service=Queue,name=DLQ
  </attribute>
  
  <!--The default maximum number of times to attempt delivery of a 
      message before sending to the DLQ (if configured).
      This can be overridden on a per destination basis-->
  
  <attribute name="DefaultMaxDeliveryAttempts">10</attribute>
  
  <!--The default Expiry Queue to use for destinations. This can 
      be overridden on a per destinatin basis-->
  
  <attribute name="DefaultExpiryQueue">
    jboss.messaging.destination:service=Queue,name=ExpiryQueue
  </attribute>
  
  <!--The default redelivery delay to impose. This can be overridden 
      on a per destination basis -->
  
  <attribute name="DefaultRedeliveryDelay">0</attribute>
  
  <!--The periodicity of the message counter manager enquiring on 
      queues for statistics-->
  
  <attribute name="MessageCounterSamplePeriod">5000</attribute>
  
  <!--The maximum amount of time for a client to wait for failover 
      to start on the server side after it has detected failure-->
  
  <attribute name="FailoverStartTimeout">60000</attribute>
  
  <!--The maximum amount of time for a client to wait for failover 
      to complete on the server side after it has detected failure-->
  
  <attribute name="FailoverCompleteTimeout">300000</attribute>

  <attribute name="StrictTck">false</attribute>
  
  <!--The maximum number of days results to maintain in the message 
      counter history-->
  
  <attribute name="DefaultMessageCounterHistoryDayLimit">-1</attribute>
  
  <!--The name of the connection factory to use for creating 
      connections between nodes to pull messages-->
  
  <attribute name="ClusterPullConnectionFactoryName">
    jboss.messaging.connectionfactory:service=ClusterPullConnectionFactory
  </attribute>
  
  <!--When redistributing messages in the cluster. Do we need to 
      preserve the order of messages received
      by a particular consumer from a particular producer? -->
        
  <attribute name="DefaultPreserveOrdering">false</attribute>
  
  <!-- Max. time to hold previously delivered messages back waiting for
       clients to reconnect after failover -->
  
  <attribute name="RecoverDeliveriesTimeout">300000</attribute>
  
  <!-- Set to true to enable message counters that can be viewed via JMX -->
  
  <attribute name="EnableMessageCounters">false</attribute>
  
  <!-- The password used by the message sucker connections to create connections.
       THIS SHOULD ALWAYS BE CHANGED AT INSTALL TIME TO SECURE SYSTEM
  <attribute name="SuckerPassword"></attribute>
  -->

  <!-- The name of the server aspects configuration resource
  <attribute name="ServerAopConfig">aop/jboss-aop-messaging-server.xml</attribute>
  -->
  <!-- The name of the client aspects configuration resource
    <attribute name="ClientAopConfig">aop/jboss-aop-messaging-client.xml</attribute>
  -->

  <depends optional-attribute-name="PersistenceManager">
    jboss.messaging:service=PersistenceManager
  </depends>
  
  <depends optional-attribute-name="JMSUserManager">
    jboss.messaging:service=JMSUserManager
  </depends>
  
  <depends>jboss.messaging:service=Connector,transport=bisocket</depends>
  <depends optional-attribute-name="SecurityStore"
    proxy-type="org.jboss.jms.server.SecurityStore">
      jboss.messaging:service=SecurityStore
  </depends>
</mbean>
Copy to Clipboard Toggle word wrap
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat