2013-02-19 4 views
0

ActiveMQ 시작시 Topic을 설정하려고합니다. 영구 가입자가 있지만 아직 사용할 수 없습니다. 내가 activemq.xml 없지만, 운이를 추가 한Linux ActiveMQ 대상 항목 시작시

<destinations> 
    <queue physicalName="FOO.BAR" /> 
    <topic physicalName="SOME.TOPIC" /> 
</destinations> 

:

시작 구성을 추가했다. ActiveMQ 시작시 Topic이 생성되지 않습니다. 우리는 5.7을 달리고있다.

아이디어가 있으십니까?

편집 :

내가 ActiveMQ를의 시작에 설치에 주제를 시도하고있다. ActiveMQ가 다시 시작되거나 종료되고 시작될 때 주제가 메모리에 있기 때문에 삭제됩니다. XML 구성에 주제를 추가하여 AMQ가 시작될 때 즉시 작성되도록합니다. 이런 식으로 우리 ESB는 직접적으로 접근 할 수 있으며 일을 시작할 수 있습니다. ESB는 영구 가입자이지만 아직 가입하지는 않습니다. 아직 구현 중입니다. 문서에 XML 구성의 위 행에 추가가 표시됩니다. 그러나 나는 그것에 운이 없다. 주제는 시작시 작성되지 않습니다.

그래서 나는 단지 그들을 추가 할 것이다.

<beans 
    xmlns="http://www.springframework.org/schema/beans" 
    xmlns:amq="http://activemq.apache.org/schema/core" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> 

<!-- Allows us to use system properties as variables in this configuration file --> 
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="locations"> 
     <value>file:${activemq.conf}/credentials.properties</value> 
    </property> 
</bean> 

<!-- 
    The <broker> element is used to configure the ActiveMQ broker. 
--> 
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}"> 

    <!-- Like here? --> 
    <destinations> 
     <queue physicalName="FOO.BAR" /> 
     <topic physicalName="SOME.TOPIC" /> 
    </destinations> 
    <!-- 
     For better performances use VM cursor and small memory limit. 
     For more information, see: 

     http://activemq.apache.org/message-cursors.html 

     Also, if your producer is "hanging", it's probably due to producer flow control. 
     For more information, see: 
     http://activemq.apache.org/producer-flow-control.html 
    --> 

    <destinationPolicy> 
     <policyMap> 
      <policyEntries> 
      <policyEntry topic=">" producerFlowControl="true"> 
       <!-- The constantPendingMessageLimitStrategy is used to prevent 
        slow topic consumers to block producers and affect other consumers 
        by limiting the number of messages that are retained 
        For more information, see: 

        http://activemq.apache.org/slow-consumer-handling.html 

       --> 
       <pendingMessageLimitStrategy> 
       <constantPendingMessageLimitStrategy limit="1000"/> 
       </pendingMessageLimitStrategy> 
      </policyEntry> 
      <policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb"> 
       <!-- Use VM cursor for better latency 
        For more information, see: 

        http://activemq.apache.org/message-cursors.html 

       <pendingQueuePolicy> 
       <vmQueueCursor/> 
       </pendingQueuePolicy> 
       --> 
      </policyEntry> 
      </policyEntries> 
     </policyMap> 
    </destinationPolicy> 


    <!-- 
     The managementContext is used to configure how ActiveMQ is exposed in 
     JMX. By default, ActiveMQ uses the MBean server that is started by 
     the JVM. For more information, see: 

     http://activemq.apache.org/jmx.html 
    --> 
    <managementContext> 
     <managementContext createConnector="false"/> 
    </managementContext> 

    <!-- 
     Configure message persistence for the broker. The default persistence 
     mechanism is the KahaDB store (identified by the kahaDB tag). 
     For more information, see: 

     http://activemq.apache.org/persistence.html 
    --> 
    <persistenceAdapter> 
     <kahaDB directory="${activemq.data}/kahadb"/> 
    </persistenceAdapter> 


     <!-- 
     The systemUsage controls the maximum amount of space the broker will 
     use before slowing down producers. For more information, see: 
     http://activemq.apache.org/producer-flow-control.html 
     If using ActiveMQ embedded - the following limits could safely be used: 

    <systemUsage> 
     <systemUsage> 
      <memoryUsage> 
       <memoryUsage limit="20 mb"/> 
      </memoryUsage> 
      <storeUsage> 
       <storeUsage limit="1 gb"/> 
      </storeUsage> 
      <tempUsage> 
       <tempUsage limit="100 mb"/> 
      </tempUsage> 
     </systemUsage> 
    </systemUsage> 
    --> 
     <systemUsage> 
     <systemUsage> 
      <memoryUsage> 
       <memoryUsage limit="64 mb"/> 
      </memoryUsage> 
      <storeUsage> 
       <storeUsage limit="100 gb"/> 
      </storeUsage> 
      <tempUsage> 
       <tempUsage limit="50 gb"/> 
      </tempUsage> 
     </systemUsage> 
    </systemUsage> 

    <!-- 
     The transport connectors expose ActiveMQ over a given protocol to 
     clients and other brokers. For more information, see: 

     http://activemq.apache.org/configuring-transports.html 
    --> 
    <transportConnectors> 
     <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB --> 
     <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&amp;wireformat.maxFrameSize=104857600"/> 
     <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&amp;wireformat.maxFrameSize=104857600"/> 
    </transportConnectors> 

    <!-- destroy the spring context on shutdown to stop jetty --> 
    <shutdownHooks> 
     <bean xmlns="http://www.springframework.org/schema/beans" class="org.apache.activemq.hooks.SpringContextHook" /> 
    </shutdownHooks> 

</broker> 

<!-- 
    Enable web consoles, REST and Ajax APIs and demos 

    Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details 
--> 
<import resource="jetty.xml"/> 

/저 친구

+0

당신이하고자하는 일과 그 문제가 무엇인지를 확장해야합니다. 귀하의 질문이 무엇인지 분명하지 않습니다. –

+0

편집을 참조하십시오. AMQ 시작시 Topic을 설정하려고합니다. – ZiggyStardust

답변

0

난 그냥 (맥 OS)에 바닐라 5.7 AMQ 설치로 사람들을 떨어 그리고 당신이해야

... 웹 콘솔을 통해 대기열 및 주제를 모두 참조 문제를 좁히기 위해 AMQ를 새로 설치하여 다시 시도하십시오

0

내 솔루션이 작동합니다. 우리의 리눅스 환경에서는 하나 이상의 인스턴스가있었습니다. 하나/사용자/공유 아래/home/activemq/

그래서 내가 corret 파일을 편집 할 때 작동했습니다.

감사합니다.

0

<broker></broker> 태그 내부에

<destinations> 
    <queue physicalName="FOO.BAR" /> 
    <topic physicalName="SOME.TOPIC" /> 
</destinations> 

처럼 <destinations> 태그 안에 목적지에 넣습니다.

관련 문제