其實算不上初識了,工做一年來一直都有接觸 mq 相關的東西。可是,歷來都是粘貼複製別人的配置代碼,卻從未認真系統的學習過它,如今線上用 mq 的項目出問題了,老闆在後面拿槍指着呢,不得很差好研究下了。html
說幹就幹,先到官網下載 ActiveMQ 安裝到本地。若是用 Mac 的化就方便了,直接在終端:brew install activemq
,而後根據安裝後的提示直接輸入:activemq start
啓動它,執行啓動命令後輸出了四行日誌,而後就完了!記得以前見過有個網站能夠查看 ActiveMQ 的 Queue,Topic,以及一些消息堆積數等數據的,但是啓動日誌並無告訴我怎麼打開這樣的網站。沒辦法,去官網看文檔吧!
如今來到了官網,大眼一瞅,發現右下方的菜單欄裏面有個 Using ActiveMQ 5。無須多言,這應該就是咱們要找的文檔了,先看了再說。
打開這個文檔頁面,看到了程序員們很是熟悉的 Examples,Getting Started,Hello World 字樣。那麼就先從 Getting Started 來看吧!程序員
首先是,文檔的自我說明:本文檔介紹了怎麼在 Unix 和 Windows 平臺上安裝和配置 ActiveMQ。
而後是,安裝條件:大概就是須要幾十或幾百兆的硬盤空間啊,須要先安裝 Java,Maven 啊,基本是 Java 菜鳥都能看懂的東西了。
緊接着就是怎麼在不一樣的平臺上安裝和啓動了,剛纔在 Mac 上直接用 brew 安裝和啓動了,這也不廢話了!
啓動完了,而後又提示咱們檢測下是否啓動成功了,直接檢測 ActiveMQ 監聽的 61616 端口有沒有被監聽便可:netstat -an | grep 61616
而後說監控 ActiveMQ 的狀態,在這裏終於找到了咱們須要的查看 ActiveMQ 各項數據的地址:http://localhost:8161/admin
,在瀏覽器中打開 此地址。
就像學開車同樣,不能只學打開火讓車飛快地跑起來,還應該學會如何安全的讓車停下來。找到 ActiveMQ 的安裝目錄,進入 bin 文件夾後執行:activemq stop
。由此能夠,剛纔使用 brew 安裝時,brew 必是把 bin 目錄下的 activemq 這個腳本作成了全局可執行命令,因此使用 activemq start
能夠直接啓動呢!不用多說,如今我直接在當前目錄也可讓車停下來:activemq stop
,試了一下,確實停下來了!
而後是怎麼使用不一樣的配置,這裏我發現說的有兩種狀況:ActiveMQ 5.8 or older 和 activeMQ 5.9,而後我就查看了下我安裝的版本,activemq: stable 5.14.4,尼瑪,差距有點大啊!難道文檔版本落後那麼多?哎,先無論了,等下不行的話再從新安裝最新版吧!這裏介紹了這兩種狀況怎麼使用其餘配置而不是默認配置文件來啓動 ActiveMQ,而後我還看到了 Spring Support 和 Configuration section。個人項目就是用的 spring,之前配置都是抄別人的,如今終於能夠看看官方指南了,先把這兩個連接收藏起來等下都看了。從這裏我也明白了,使用 activemq console
啓動的話,就能夠一直在當前終端裏看啓動和運行日誌了。好了,如今我特別想去看看
Hello World 了。spring
開頭說運行完這個例子後,能夠作什麼什麼。。。尼瑪,一共五道做業題,我就能看明白最後一道:使用 Topic 代替 Queue,以前我仍是稍微明白一點主題和隊列的概念的。無論做業了,先去看看現成的例子吧!
本身在 IDEA 裏面抄襲了下例子,發現有些 ActiveMQConnectionFactory 類,不是 Java 原生類,剛纔最頂端看到了 Initial Configuration guide 來設置 classpath,想必就是教咱們怎麼把 ActiveMQ 相關的 jar 包導入項目吧!去這個頁面看了一下,說有個叫 activemq-all.jar 的全功能包,可是沒給下載鏈接,沒辦法谷歌一下嘍,而後找到了偉大的 Maven 官方倉庫,而後找到了跟我安裝版本一直的 jar 包,而後下載它,並加入到項目 path 中去。
好了,如今能夠愉快地抄例子代碼了。
例子抄完了,運行了兩邊,只知其一;不知其二的,消息好像是被保存在了項目根目錄的 KahaDB 的文件夾下去了,並無 保存到 ActiveMQ 服務器中,反正我在 localhost:8161 上沒看到相關的 Queue。不過例子大概給了一個套路。
發送時:apache
消費時:瀏覽器
看了那麼久,稍微有點了解吧!今天先這樣吧,回家吃飯了!安全