1. 程式人生 > >ActiveMQ學習(二)初識AMQ及其下載安裝

ActiveMQ學習(二)初識AMQ及其下載安裝

PS:為方便起見,本文以及後續文章均使用AMQ簡稱,請各位大大知曉!

1. 瞭解ActiveMQ

上篇文章我們學習了Java訊息系統的規範JMS,本篇就來認識一下AMQ。

AMQ是Apache出品的、最流行的、能力強勁的開源訊息匯流排。通過上篇我們知道JMS只是訊息服務的介面,而該介面的實現(即JMS提供者)有很多種,在此不再一一列舉。AMQ即是其中的一種,它完全支援JMS1.1和J2EE1.4,非常快速,支援多種語言的客戶端和協議,它主要有以下特性:

  1. 多種語言和協議編寫客戶端。語言: Java,C,C++,C#,Ruby,Perl,Python,PHP。應用協議: OpenWire,Stomp REST,WS Notification,XMPP,AMQP
  2. 完全支援JMS1.1和J2EE 1.4規範 (持久化,XA訊息,事務)
  3. 對Spring的支援,ActiveMQ可以很容易內嵌到使用Spring的系統裡面去,而且也支援Spring2.0的特性
  4. 通過了常見J2EE伺服器(如 Geronimo,JBoss 4,GlassFish,WebLogic)的測試,其中通過JCA 1.5 resource adaptors的配置,可以讓ActiveMQ可以自動的部署到任何相容J2EE 1.4 商業伺服器上
  5. 支援多種傳送協議:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA
  6. 支援通過JDBC和journal提供高速的訊息持久化
  7. 從設計上保證了高效能的叢集,客戶端-伺服器,點對點
  8. 支援Ajax
  9. 支援與Axis的整合
  10. 以很容易的呼叫內嵌JMS provider,進行測試

選用AMQ作為訊息中介軟體的入門學習,相信其他廠商提供的MQ也一定能快速上手。

2. 下載及啟動

2.1 下載

截止當前時間2017年11月6日,最新版本為5.15.2,本文將演示在Windows系統下的使用,使用的版本為5.14.5個人推薦,稍後說明)

2.2 啟動

下載完成後會得到 apache-activemq-5.14.5-bin.zip 檔案,解壓後如下所示:
這裡寫圖片描述

雙擊 \bin\win64

目錄下的 activemq.bat 檔案啟動AMQ服務,特別注意以下幾點:

  • 根據你自己的系統位數自行選擇win64或者win32目錄
  • 網上有人說雙擊bin目錄下的activemq.bat檔案即可啟動,可我百般嘗試都沒成功,只有選擇具體的系統才可以,不知是何原因
  • 特別注意,有的人可能下載的是5.14.5以上的版本,這時候啟動AMQ會拋異常或者閃退,無法啟動;這是因為自5.15.0版本起,AMQ最低要求 jdk1.8,而5.14.5是支援jdk1.7的最高版本,因此我個人才推薦使用這個(使用jdk1.8的大神當我沒說……)

AMQ內建了jetty伺服器,啟動後會出現如下視窗(關閉該視窗即關閉服務):
這裡寫圖片描述

這時候我們訪問:

http://localhost:8161/:即是AMQ的Web控制檯導航頁
http://localhost:8161/admin:即是AMQ的後臺web管理應用(使用者名稱密碼都是admin),如下圖所示:
這裡寫圖片描述

至此,AMQ的服務環境已經搭建完成了,本篇內容較為簡單,下一篇我們將學習AMQ在Java中的具體使用。

相關推薦

ActiveMQ學習初識AMQ及其下載安裝

PS:為方便起見,本文以及後續文章均使用AMQ簡稱,請各位大大知曉! 1. 瞭解ActiveMQ 上篇文章我們學習了Java訊息系統的規範JMS,本篇就來認識一下AMQ。 AMQ是Apache出品的、最流行的、能力強勁的開源訊息匯流排。通過上篇我們知道J

Java容器學習筆記 Set介面及其實現類的相關知識總結

在Java容器學習筆記(一)中概述了Collection的基本概念及介面實現,並且總結了它的一個重要子介面List及其子類的實現和用法。 本篇主要總結Set介面及其實現類的用法,包括HashSet(無序不重複),LinkedHashSet(按放入順序有序不重複),TreeS

Spring 學習 __BeanWrapper及其實現

一、 BeanWrapper BeanWrapper是對Bean的包裝,其介面中所定義的功能很簡單包括設定獲取被包裝的物件,獲取被包裝bean的屬性描述器,由於BeanWrapper介面是PropertyAccessor的子介面,因此其也可以設定以及訪問被包裝物件的屬性值

爬蟲庫之BeautifulSoup學習

不必要 baidu html left 官方 blank 正則 文本處理 比較 BeautifulSoup官方介紹文檔:https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html 四大對象種

cocos2dx 3.1從零學習——菜單、場景切換、場景傳值

天空 ptr select 特效 new 要點 綁定 使用 water 回想一下上一篇的內容,我們已經學會了創建一個新的場景scene,加入sprite和label到層中。掌握了定時事件schedule。我們能夠順利的寫出打飛機的主場景框架。 上一篇的內容我練習了七個新

redis學習——String數據類型

字符串類型 創建 復雜度 back nbsp 命令 時間復雜度 value con 一、概述 字符串類型是Redis中最為基礎的數據存儲類型,它在Redis中是二進制安全的,這便意味著該類型可以接受任何格式的數據,如JPEG圖像數據或Json對象描述信息等。在R

Linux 網卡驅動學習網絡驅動接口小結

-a key 頻率 網絡 上網 ren 網絡設備 ews 入口 【摘要】前文我們分析了一個虛擬硬件的網絡驅動樣例。從中我們看到了網絡設備的一些接口。事實上網絡設備驅動和塊設備驅動的功能比較相似,都是發送和接收數據包(數據請求)。當然它們實際是有非常多不同

ext2文件系統學習—— 目錄磁盤結構

echo free 文件格式 htm file 目錄結構 bitmap 點號 name 創建鏡像、mount等操作和上一篇一樣,測試目錄結構如下: 一些文件系統信息如下: Block size: 1024 Inodes per group: 1

RabbitMQ學習工作隊列

lose borde 阻塞 lpad mes getc actor 使用 處理 1.工作隊列(Work Queue)又叫任務隊列(Task Queue)指將任務分發個多個消費者。 2.實際操作: 這裏使用一個生產者產生多條數據提供給3個消費者

JAVA學習 String使用equals方法和==分別比較的是什麽?

找到 基礎上 stirng print 大小 obj lis 分配 ret String使用的equals方法和==的區別 equals方法和==的區別 首先大家知道,String既可以作為一個對象來使用,又可以作為一個基本類型來使用。這裏指的作為一個基本類型來使用只是

CSS學習

種類 round align 圖片 單獨 tom -s 中控 vertical 列表 在HTML中,有兩種類型的列表: 無序列表 - 列表項標記用特殊圖形(如小黑點、小方框等) 有序列表 - 列表項的標記有數字或字母 使用CSS,可以列出進一步的樣式,

Struts2學習運行Action中方法的三種方式

tracking 利用 content con return -m i++ var itl 1.運行execute()方法 一般的能夠直接在action中書寫execute,調用action時會自己主動運行此方法 2.配置method方法 在s

python 命令行參數學習

Coding odi increase logs 說明 code des urn 數學 照著例子看看打打,碼了就會。寫了個命令行參數調用進行運算的腳本。 參考文章鏈接:http://www.jianshu.com/p/a50aead61319 #-*-coding:utf

【轉】JMeter學習錄制腳本

使用 get 運行 喜歡 錄制完成 帶來 免費 sdn title ---------------------------------------------------------------------------------------------------- 環境

算法學習

要求 print 位數 div 輸入數據 class bsp arrays 變量 1.Sum of digits 說明:1.第一行包含要處理的值的數量;   2.然後N行將會描述這些數字的值應該是由3個整數A、B、C來計算的;   3.對於每一種情況,你需要將A乘以B,然後

SpringMVC源代碼學習FrameworkServlet內處理請求的流程

重新 tex events ... resp star 方便 沒有 isp 以下內容基於書:《看透SpringMVC-源代碼分析與實踐》基本照搬。。。用於自己查閱備忘。 先看一眼DispatcherServlet繼承樹 我們知道servlet處理方法都是通過HttpSer

Linux學習之內核、系統調用、庫

all mic linu windows系統 文件 .dll 執行 lin win   這篇博客主要介紹Linux中幾個常見的概念      Kernal:內核:我們知道計算機的硬件包括:cpu、內存、外存等等 系統想要統一資源分配就需要用到內核!內核是將計算機的硬件資源抽

JS學習

round 進入 跳過 color ole back ++ 代碼 define JS中的循環結構 【循環結構的執行步驟】 1、聲明循環變量; 2、判斷循環條件; 3、執行循環體操作; 4、更新循環變量; 然後,循環執行2~4,知道條件不成立

linux學習——湯哥的推薦書籍

最終 對比 2.6 win 程序開發 經驗 專業 linux 操作 面試題目 成為一名精通 Linux程序設計的高級程序員一直是不少朋友孜孜以求的目標。 根據中華英才網統計數據,北京地區 Linux 程序員月薪平均為 Windows程序員的 1.8 倍、Java 程序員

Unity3D學習:使用JSON進行對象數據的存儲讀取

進行 存儲路徑 新的 del jpg cati spa 全局變量 .net 前言 前段時間完成了自己的小遊戲Konster的制作,今天重新又看了下代碼。原先對關卡解鎖數據的存儲時用了Unity自帶的PlayerPref(字典式存儲數據)。 讀取關卡數據的代碼: voi