JBoss和JMS簡(jiǎn)要概述
在JBoss中使用Java Messageing Service (JMS). 不是JMS指南,而是JBoss和JMS如何一起使用,如果你想看JMS的介紹,請(qǐng)參考 JMS Specification 或 JMS turorial.
1.什么是JMS
JMS是Java API, 允許應(yīng)用程序來(lái)建立、接收和讀取消息。程序依靠這些API, 在運(yùn)行時(shí)需要一個(gè)JMS實(shí)現(xiàn)接口,來(lái)提供管理和控制,這被稱為JMS provider, 現(xiàn)在有幾種不同的JMS Provider; 在JBoss中的叫做JbossMQ。
2.JMS 和J2EE
JMS是在EJB和J2EE框架開(kāi)發(fā)之前進(jìn)行開(kāi)發(fā)的,所以在JMS說(shuō)明書(shū)中沒(méi)有涉及到EJB或J2EE。EJB 和J2EE第一代版本中也沒(méi)有涉及到JMS,一直到EJB1.1,在生成一個(gè)可用Beand的容器provider中JMS也不是必須的API。在 J2EE1.2中JMS接口是必需的情況,但并不是非得要包含一個(gè)JMS Provider;在EJB2.0和J2EE1.3中又進(jìn)行改變,應(yīng)用服務(wù)器包含了一個(gè)JMS Provider,自從J2EE1。3需要EJB2.0,增加了以下兩個(gè)JMS特性:
一種新Bean類型定義, 也就是消息驅(qū)動(dòng)Beam (MDB), 這種bean做為JMS消息監(jiān)聽(tīng)者,可以異步地處理JMS消息。
JMS處理作為資源,來(lái)自一個(gè)Bean 的JMD 發(fā)布(發(fā)送)必須能和其他bean的全局事務(wù)環(huán)境共享。這個(gè)需要把JMS認(rèn)為是一個(gè)容器管理資源,象JDBC的連接。
3.JMS和JBoss
JBoss從2.0版本以后都支持JMS。 在2.1中增加了MDB,從2.4版本開(kāi)始JMS作為一個(gè)事務(wù)資源。
JBoss中JMS的體系結(jié)構(gòu)如下:
JMS Provider, 叫做JbossMQ 。 是JBoss實(shí)現(xiàn)JMS 1.0.2規(guī)范的一部分,包括可選部分,象ASF(Application Service Facvility)。JBossMQ處理和普遍JMS一樣:建立 queues (隊(duì)列)或topic(標(biāo)題),持久性等。MDB (Message Driven Beans),資源適配器。以上是JBoss和JMS的簡(jiǎn)要概述
【編輯推薦】