五、ActiveMQ的Broker

一、broker是什么

  相当于一个ActiveMQ服务器实例。说白了,Broker其实就是实现了用代码的形式启动ActiveMQ将MQ嵌入到Java代码中,以便随时用随时启动,在用的时候再去启动这样能节省了资源,也保证了可用性。这种方式,我们实际开发中很少采用,因为他缺少太多了东西,如:日志,数据存储等等。

二、启动Broker时指定配置文件

  启动broker时指定配置文件,可以帮助我们在一台服务器上启动多个broker。实际工作中一般一台服务器只启动一个broker。

# 复制配置文件 
cp /usr/local/apache-activemq-5.16.0/conf/activemq.xml /usr/local/apache-activemq-5.16.0/conf/activemq02.xml

# 启动
/usr/local/apache-activemq-5.16.0/bin/activemq start xbean:file:/usr/local/apache-activemq-5.16.0/conf/activemq02.xml

三、嵌入式的Broker启动

  用ActiveMQ Broker作为独立的消息服务器来构建Java应用。ActiveMQ也支持在vm中通信基于嵌入的broker,能够无缝的集成其他java应用。

  下面演示如何启动嵌入式的broker

  • pom.xml添加一个依赖
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.10.1</version>
</dependency>
  • 嵌入式broke的启动类
public class LocalBroker {

    public static void main(String[] args) throws Exception {
        //ActiveMQ也支持在vm中通信基于嵌入的broker
        BrokerService brokerService = new BrokerService();
        brokerService.setUseJmx(true);
        brokerService.addConnector("tcp://localhost:61616");
        brokerService.start();
    }
}

  测试消息发送和接受

原文地址:https://www.cnblogs.com/jdy1022/p/14262204.html