ActiveMQ入門系列一:認識並安裝ActiveMQ(Windows下)

 

1、什麼是ActiveMQjava

度娘給出的定義:spring

Apache ActiveMQ是Apache軟件基金會所研發的開放源代碼消息中間件;因爲ActiveMQ是一個純Java程序,所以只須要操做系統支持Java虛擬機,ActiveMQ即可執行。

ActiveMQ的官網打出的標語(如上圖):apache

Flexible & Powerful Open Source Multi-Protocol Messaging

大意是:兼容性好而且功能強大的開源多協議消息中間件,那具體是怎麼體現的呢?
1.兼容性好:
ActiveMQ能夠很容易內嵌到使用Spring的系統裏面去,
經過了常見J2EE服務器(如 Geronimo,JBoss 4,GlassFish,WebLogic)的測試,其中經過JCA 1.5 resource adaptors的配置,可讓ActiveMQ能夠自動的部署到任何兼容J2EE 1.4 商業服務器上
2.功能強大:
支持經過JDBC和journal提供高速的消息持久化,
支持客戶端-服務器,點對點
支持Ajax
支持與Axis的整合, WebServices
能夠很容易的調用內嵌JMS provider進行測試
從設計上保證了高性能的集羣安全

3.多協議:
應用協議有OpenWire,Stomp REST,WS Notification,XMPP,AMQP,
還支持多種傳送協議:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA
總之一句話,ActiveMQ是一個消息中間件而且很好很強大,須要用到消息中間件的時候咱們選他就對了。服務器

2、ActiveMQ的名詞解釋併發

在JMS規範中,全部的標準定義都在javax.jms包中,它的功能實現和咱們即將要寫的代碼中都會用到下面的內容:tcp

1.Destination(目的地)
用於對Message進行管理的對象,由ActiveMQ負責維護。
MessageProducer須要指定Destination才能發送消息,MessageConsumer須要指定Destination才能接收消息。
2.Producer(消息生產者)
負責生成消息併發送目的地。應用接口爲MessageProducer。
3.Consumer(消息消費者)
負責從目的地中消費【處理|監聽|訂閱】Message。應用接口爲MessageConsumer
4.Message(消息)
消息封裝一次通訊的內容。常見類型有:StreamMessage、BytesMessage、TextMessage、ObjectMessage、MapMessage。
5.ConnectionFactory(鏈接工廠)
用於建立鏈接的工廠類型
6.Connection(鏈接)
用於創建訪問ActiveMQ鏈接的類型, 由連接工廠建立。
7.Session(會話)
一次持久有效有狀態的訪問。由connection建立,是具體操做消息的基礎支撐。
8.Queue & Topic
Queue是隊列目的地,Topic是主題目的地。都是Destination的子接口。
Queue特色: 隊列中的消息,默認只能由惟一的一個消費者處理。一旦處理,消息刪除。
Topic特色:主題中的消息,會發送給全部的消費者同時處理。只有在消息能夠重複處理的業務場景中可以使用。
9.PTP(Point to Point,點對點消息模型)
就是基於Queue實現的消息處理方式。
10.PUB & SUB(Publish & Subscribe ,消息的發佈/訂閱模型)
是基於Topic實現的消息處理方式。ide

3、Windows下安裝ActiveMQ性能

官網上下載便可:測試

下載後直接解壓縮直接就能用(免安裝)。

它的目錄結構:

bin/是服務啓動相關的命令文件所在目錄

data/是默認持久化文件所在目錄

docs/裏面放的是用戶手冊

conf/是配置文件所在目錄,任何配置文件修改後,必須重啓ActiveMQ,才能生效.
有幾個配置文件須要提下,後面會用到:
1.activemq.xml
就是spring配置文件。配置的是ActiveMQ應用使用的默認對象組件.
transportConnectors標籤 - 配置連接端口信息的. 其中的端口號61616是ActiveMQ對外發布的tcp協議訪問端口. 就是java代碼訪問ActiveMQ時使用的端口.

配置安全認證和持久化都是在這個文件裏面。

2.jetty.xml
spring配置文件, ActiveMQ使用的是jetty提供HTTP服務,所以須要該文件用於配置jetty服務器的默認對象組件.

3.users.properties
內容信息: 用戶名=密碼

是用於配置客戶端經過協議訪問ActiveMQ時,使用的用戶名和密碼.

4.groups.properties

內容信息: 用戶組=用戶1,用戶2(多個用戶中間用逗號隔開)

相似於角色的概念,也相似於操做系統用戶所在的用戶組

4、啓動服務,併到頁面控制檯查看
雙擊bin\win64目錄下的activemq批處理文件,便可啓動(若是系統是32位的,就啓動bin\win32目錄下的)。

啓動完成後,能夠進入頁面控制檯查看。

同RabbitMQ相似,ActiveMQ也默認支持一個網頁版的服務查看站點,能夠實現ActiveMQ中消息相關數據的頁面查看.
ActiveMQ網頁版管理站點的默認端口8161端口就配置在jetty.xml文件中。

訪問http://localhost:8161/admin/,輸入默認的用戶名和密碼admin/admin,便可看到管理臺頁面。

能夠看到在前面名詞解釋中提到的內容

 

 

至此,ActiveMQ就安裝完了。

相關文章
相關標籤/搜索