zoukankan      html  css  js  c++  java
  • CentOS 6下ActiveMQ 5.5安装及使用MySQL

    http://activemq.apache.org/download.html下载ActiveMQ的最新版本,当前是5.50,把包apache-activemq-5.5.0-bin .tar.gz拷贝到/home/software/apache-activemq目录下,执行以下命令:

    # cd /home/software/apache-activemq

    # tar zxvf  apache-activemq-5.5.0-bin .tar.gz

    # cp -a  apache-activemq-5.5.0 /usr/local/activemq

    # cd  /usr/local/activemq

    我使用mysql作为消息的存储,修改 /usr/local/activemq/conf/activemq.xml如下:

     <!--

        Licensed to the Apache Software Foundation (ASF) under one or more
        contributor license agreements.  See the NOTICE file distributed with
        this work for additional information regarding copyright ownership.
        The ASF licenses this file to You under the Apache License, Version 2.0
        (the "License"); you may not use this file except in compliance with
        the License.  You may obtain a copy of the License at
       
        http://www.apache.org/licenses/LICENSE-2.0
       
        Unless required by applicable law or agreed to in writing, software
        distributed under the License is distributed on an "AS IS" BASIS,
        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions and
        limitations under the License.
    -->
    <!-- START SNIPPET: example -->
    <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-2.0.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.base}/conf/credentials.properties</value>
            </property>      
        </bean>
    <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/>
    <property name="username" value="root"/>
    <property name="password" value="devterry"/>
    <property name="maxActive" value="200"/>
       </bean>
        <!-- 
            The <broker> element is used to configure the ActiveMQ broker. 
        -->
        <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data" destroyApplicationContextOnStop="true">
     
            <!--
    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" memoryLimit="1mb">
                      <pendingSubscriberPolicy>
                        <vmCursor />
                      </pendingSubscriberPolicy>
                    </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.base}/data/kahadb"/>
            </persistenceAdapter> -->
            <persistenceAdapter>
                <jdbcPersistenceAdapter dataSource="#mysql-ds"/>
            </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
                 
            <systemUsage>
                <systemUsage>
                    <memoryUsage>
                        <memoryUsage limit="20 mb"/>
                    </memoryUsage>
                    <storeUsage>
                        <storeUsage limit="1 gb"/>
                    </storeUsage>
                    <tempUsage>
                        <tempUsage limit="100 mb"/>
                    </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>
                <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
            </transportConnectors>
        </broker>
        <!-- 
            Enable web consoles, REST and Ajax APIs and demos
            It also includes Camel (with its web console), see ${ACTIVEMQ_HOME}/conf/camel.xml for more info
            
            Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details 
        -->
        <import resource="jetty.xml"/>
        
    </beans>
    <!-- END SNIPPET: example -->
     

    在启动前,需要创建数据库 activemq,并且不要参照activemq-jdbc.xml配置 <property name="poolPreparedStatements" value="true"/>。

    # bin/activemq start

    从浏览器中打开:,发给消息测试一下,可以正常发送的话,就应该没有什么大问题。 

  • 相关阅读:
    (转)Computer Vision Open Source Algorithm Implementations
    关于项目依赖项
    fatal error CVT1100: duplicate resource. type:MANIFEST, name:1, language:0×0409
    转:error LNK2005
    C++ string类常用函数
    [转载]同步synchronized方法和代码块
    Java语言基础常用对象API(二)泛型、Map集合
    Java语言基础IO流(输入输出流) 字符流
    Java语言基础常用对象API(二)集合框架
    Java语言基础IO流(输入输出流) 字节流、转换流
  • 原文地址:https://www.cnblogs.com/TerryLiang/p/2178501.html
Copyright © 2011-2022 走看看