Broker是ActiveMQ的一個實例。
我們可以將ActiveMQ看成一個服務,是需要我們下載解壓後才能使用(免安裝)。
主要使用目的是爲了將服務器和客戶端解耦,用來做消息的傳遞。
而Broker是ActiveMQ的一個簡易實現,我們只需要在代碼中啓動Broker(用跑代碼的方式啓動ActiveMQ),從而實現嵌入式的ACtiveMQ。使用過程如下:
(1) 運行Broker啓動程序
(2) 運行 sender(發送者) 代碼,發送mq
(3) 運行consume(消費者) 代碼,接收mq
其中broker的啓動方式有兩種:
1. Broker Service啓動 Broker, 例子如下:
BrokerService broker = new BrokerService();
broker.setUseJma(true);
broker.addConnector("tcp://localhost:61616");
broker.start();
2. BrokerFactory方式啓動 Broker,例子如下:
String uri = "properties:broker.properties";
BrokerService broker = BrokerFactory.createBroker(new URI(uri));
broker.addConnector("tcp://localhost:61616");
broker.start();
其中,broker.properties 的內容如下所示:
useJmx=true
persistent=false
brokerName=Cheese
說白了,Broker其實就是實現了用代碼的形式啓動ActiveMq,將mq嵌入到java代碼中,隨時用隨時啓動,在用的時候再去啓動。節省了資源,也保證了可靠性。