JMS 的結構在我們講述消息驅動Beans之前,讓我們先來談談JMS(Java消息服務)。我們知道現在有很多消息系統,每一個都有他們自己的API,這些消息系統提供了事件交換和數據異步的服務。作為一個程序員,我可以給消息服務器發送一些信息然后繼續工作,而不必等待來自系統的響應。JMS API描述了一個標準的方法來訪問幾乎所有的消息系統,就像JDBC答應我們使用相同的API訪問Oralce,Sybase和SQL Server 一樣。 如同可以調用異步服務那樣,我們從中獲得額外的好處是程序之間有一個寬松的耦合,發送請求的代碼和響應請求的代碼是分離的。不同的客戶端把消息發送到同一個指定的目的地;然后,接收者(Receiver)從目的地分離出消息并顯示出來。下面讓我們快速的了解一些JMS API的基本概念:消息映射域
JMS消息消息映射域 消息系統有幾種運行模式。JMS API 提供了不同的域,他對應不同的模式。一個JMS提供者(PRovider)一個或多個域。兩個、多個公共域是點對點和發布/訂約。這兩個域有下面的概念:Destination:對象客戶端指定消息發送和接受的目的地ProdUCer:一個客戶端發送一個消息到一個目的地Consumer:一個客戶端從目的地接受消息點對點(PTP)一個點對點應用有下面幾個特征: 一個PTP提供者是一個發送者一個PTP消費者是一個接收者一個PTP目標是一個隊列一個消息只能被一個接收者消費 發布/訂閱(pub/sub)一個pub/sub應用有以下特征:A pub/sub producer is publisherA pub/sub consumer is a subscriber A pub/sub destination is a topic A message may have multiple subscribers