activemq的启动方式

  一、简介:ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。

  二、其他常用的jms的消息队列:当前使用较多的消息队列有RabbitMQ、RocketMQ、Kafka、ZeroMQ、MetaMq等,而部分数据库如Redis、Mysql以及phxsql也可实现消息队列的功能。

  三、这里重点介绍一下activemq实际应用中设计的启动方式:、

  1)独立的中间件:

  a、下载地址:http://activemq.apache.org/activemq-5154-release.html

  b、启动方式比较简单:在bin目录下面执行即可

  

  c、linux的执行方式参考:https://www.cnblogs.com/ll409546297/p/6898155.html

  d、这种方式有点:可以截面管理,消息中间件独立等。截面访问地址:http://127.0.0.1:8161/admin/ 账号密码:admin

  

  2)代码服务启动方式:

  a、手动编写代码启动

package com.pinnet;

import org.apache.activemq.broker.BrokerService;

public class InitBroker {

    public static void main(String[] args) throws Exception {
        //新建broker服务对象
        BrokerService brokerService = new BrokerService();
        //设置名称,多个broker的时候采用
        brokerService.setBrokerName("activemq");
        brokerService.setUseJmx(true);
        //设置持久化
        brokerService.setPassiveSlave(false);
        //添加链接
        brokerService.addConnector("tcp://localhost:61616");
        //启动服务
        brokerService.start();
    }
}

  b、设置属性比较多,这里只是简单写了一点,具体可以自己研究

  

  3)工厂模式启动:

  a、代码实现:

package com.pinnet;

import org.apache.activemq.broker.BrokerFactory;
import org.apache.activemq.broker.BrokerService;

public class InitBrokerFactory {

    public static void main(String[] args) throws Exception {
        //工厂模式建立
        BrokerService brokerService = BrokerFactory.createBroker("properties:broker.properties");
        //添加链接
        brokerService.addConnector("tcp://localhost:61616");
        //开始监听
        brokerService.start();
    }
}

  b、broker.properties配置

  

#配置方式进行设置
brokerName=activeMqFactory
useJmx=true
passiveSlave=false

  4)第四种方式xml方式,bean的配置可以直接参考第二、三种方式

<?xml version="1.0" encoding="UTF-8"?>
<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
    http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
    <bean id="jmsBroker" class="org.apache.activemq.broker.BrokerService" init-method="start" destroy-method="stop">
      <property name="brokerName" value="activemq"/>
      <property name="passiveSlave" value="false"/>
      <property name="bindAddress" value="tcp://localhost:61616">
      </property>
    </bean>
</beans>

 

posted @ 2018-06-16 17:53  小不点丶  阅读(1195)  评论(0编辑  收藏  举报