1.是什么?
相当于一个ActiveMQ服务器实例,就是实现了用代码的形式启动ActiveMQ将MQ嵌入到Java代码中,以便随时用随时启动。
2.不同的配置文件模拟不同的实例
在conf目录下拷贝一份activemq.xml文件叫activemq02.xml执行:cp activemq.xml activemq02.xml
启动到bin目录下:./activemq start xbean:file:/myactiveMQ/apache-activemq-5.15.9/conf/activemq02.xml
3.嵌入式Broker
用ActiveMQ Broker作为独立的消息服务器来构建Java应用。
ActiveMQ也支持在vm中通信基于嵌入式的broker,能够无缝的集成其他java应用。
(1)加入jackson依赖否则会报没有jackson的异常
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.5</version>
</dependency>
(2)编写一个broker类
public class EmbedBroker {
public static void main(String[] args) throws Exception {
BrokerService brokerService=new BrokerService();
brokerService.setUseJmx(true);
brokerService.addConnector("tcp://localhost:61616");//自己就是消息服务器
brokerService.start();
}
}
(3)把生产者和消费者的url改为
public static final String url="tcp://localhost:61616";