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

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

  • 相关阅读:
    BZOJ 2440: [中山市选2011]完全平方数 [容斥原理 莫比乌斯函数]
    [莫比乌斯反演]【学习笔记】[旧]
    BZOJ 3289: Mato的文件管理[莫队算法 树状数组]
    BZOJ 2705: [SDOI2012]Longge的问题 [欧拉函数]
    Waiting for possible shutdown message on port 4445
    linux对文件赋权限的命令chmod的详细说明
    查看防火墙状态
    Jmeter分布式测试的各种坑之jmeter-server修改ip
    linux服务器查看公网IP信息的方法
    jmeter-server中启动后端口总是不断在变化
  • 原文地址:https://www.cnblogs.com/TerryLiang/p/2178501.html
Copyright © 2011-2022 走看看