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

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

  • 相关阅读:
    awk二十问-【AWK学习之旅】
    awk十三问-【AWK学习之旅】
    awk分割列-【AWK学习之旅】
    securecrt重建
    SQuirrel-GUI工具安装手册-基于phoenix驱动
    phoenix部署手册-基于hbase
    MySQL5.6一键部署
    CSV文件导入导出MySQL
    Percona-Server-5.7.16 启动错误
    Linux下安装php加速软件Xcache
  • 原文地址:https://www.cnblogs.com/TerryLiang/p/2178501.html
Copyright © 2011-2022 走看看