1. 程式人生 > >訊息佇列-ActiveMQ學習筆記(一)-JMS介紹與環境搭建

訊息佇列-ActiveMQ學習筆記(一)-JMS介紹與環境搭建

一、介紹JMS(來自於百度百科)        JMS即Java訊息服務(Java Message Service)應用程式介面,是一個Java平臺中關於面向訊息中介軟體(MOM)的API,用於在兩個應用程式之間,或分散式系統中傳送訊息,進行非同步通訊。 1、體系結構:
JMS提供者:連接面向訊息中介軟體的,JMS介面的一個實現。提供者可以是Java平臺的JMS實現,也可以是非Java平臺的面向訊息中介軟體的介面卡。 JMS客:生產或消費基於訊息的Java的應用程式或物件。 JMS生產者:建立併發送訊息的JMS客戶。 JMS消費者:接收訊息的JMS客戶。 JMS訊息:包括可以在JMS客戶之間傳遞的資料的物件
JMS佇列:一個容納那些被髮送的等待閱讀的訊息的區域。與佇列名字所暗示的意思不同,訊息的接受順序並不一定要與訊息的傳送順序相同。一旦一個訊息被閱讀,該訊息將被從佇列中移走。 JMS主題:一種支援傳送訊息給多個訂閱者的機制。
2、物件模型
1)連線工廠。連線工廠(ConnectionFactory)是由管理員建立,並繫結到JNDI樹中。客戶端使用JNDI查詢連線工廠,然後利用連線工廠建立一個JMS連線。 2)JMS連線。JMS連線(Connection)表示JMS客戶端和伺服器端之間的一個活動的連線,是由客戶端通過呼叫連線工廠的方法建立的。 3)JMS會話。JMS會話(Session)表示JMS客戶與JMS伺服器之間的會話狀態。JMS會話建立在JMS連線上,表示客戶與伺服器之間的一個會話執行緒。
4)JMS目的。JMS目的(Destination),又稱為訊息佇列,是實際的訊息源。 5)JMS生產者和消費者。生產者(Message Producer)和消費者(Message Consumer)物件由Session物件建立,用於傳送和接收訊息。 6)JMS訊息通常有兩種型別:
① 點對點(Point-to-Point)。在點對點的訊息系統中,訊息分發給一個單獨的使用者。點對點訊息往往與佇列(javax.jms.Queue)相關聯。 ② 釋出/訂閱(Publish/Subscribe)。釋出/訂閱訊息系統支援一個事件驅動模型,訊息生產者和消費者都參與訊息的傳遞。生產者釋出事件,而使用者訂閱感興趣的事件,並使用事件。該型別訊息一般與特定的主題(javax.jms.Topic)關聯。
3、傳遞方式: JMS定義了五種不同的訊息正文格式,以及呼叫的訊息型別,允許你傳送並接收以一些不同形式的資料,提供現有訊息格式的一些級別的相容性。
· StreamMessage -- Java原始值的資料流 · MapMessage--一套名稱-值對 · TextMessage--一個字串物件                   使用較多 · ObjectMessage--一個序列化的 Java物件   使用較多 · BytesMessage--一個未解釋位元組的資料流
二、Active MQ介紹與安裝       ActiveMQ 是Apache出品,最流行的,能力強勁的開源訊息匯流排。ActiveMQ 是一個完全支援JMS1.1和J2EE 1.4規範的。       環境準備:下載地址:http://activemq.apache.org/activemq-5133-release.html                         JMS API下載地址:http://download.csdn.net/download/wangshuxuncom/8269377        解壓activeMQ的壓縮包後,目錄如下:               啟動activeMQ的服務               啟動完成後,如下圖所示          訪問Active MQ的後臺管理系統,地址為:http://127.0.0.1:8161/admin/      使用者名稱/密碼:admin/admin       至此,環境搭建完成。