事件消息通知系統(tǒng)
在SOA架構(gòu)中,JMS協(xié)議中的“點(diǎn)對(duì)點(diǎn)”消息方式,已經(jīng)能夠很好的支持1對(duì)1系統(tǒng)之間的通訊;但是,類似事件消息的通知(應(yīng)用產(chǎn)生一個(gè)事件消息,其他多個(gè)系統(tǒng)做相應(yīng)處理),理論上JMS協(xié)議中的“訂閱”方式,能夠支持此類場(chǎng)景,不過協(xié)議說:在消息產(chǎn)生通知訂閱者的時(shí)候,如果某個(gè)訂閱者系統(tǒng)不在線,則消息丟失--此訂閱者接受不到消息。
并且,始終抱著對(duì)客戶端簡(jiǎn)單,友好的態(tài)度,我希望client(應(yīng)用)本身只要發(fā)出事件消息,并不需要去關(guān)注消息通知哪些訂閱者,而這一切,應(yīng)該由“事件消息通知系統(tǒng)”,代為完成。
經(jīng)過昨天晚上空閑時(shí)間的思考,大概設(shè)計(jì)了“事件消息通知系統(tǒng)”的概念模型。(此概念模型,基于IP,路由,DNS思考得來)
詳見下圖:

概念解釋:
1)Application:業(yè)務(wù)應(yīng)用,一旦有事件消息產(chǎn)生,不再關(guān)注需要發(fā)送到哪些目的地,只需要統(tǒng)一發(fā)送到Event Message Center;
2)Event Message Center:一切事件消息的暫存地;
3)Event Message Router:事件消息路由器,根據(jù)Event Message Configuration Center(事件消息配置中心,即事件消息路由配置中心),將不同的消息,路由分發(fā)到不同的訂閱者目的地;
4)Event Message Configuration Center:事件消息配置中心,即事件消息路由配置中心;
5)Event Message Registrar:事件消息登記中心,通過GUI界面,將Event Message Configuration Center中的路由信息展現(xiàn)給用戶,并且允許用戶進(jìn)行事件消息路由信息的配置;
6)Event Message Subscription:事件消息訂閱中心,同一類事件消息的暫存地;
7)Event Message Subscription Distributer:事件消息訂閱分發(fā)者,根據(jù)Event Message Subscription Configuration Center(事件消息訂閱配置中心)的配置信息,講事件消息分發(fā)到不同的訂閱者目的地;
8)Event Message Subscription Configuration Center:事件消息訂閱配置中心,即事件消息訂閱分發(fā)路由信息配置;
9)Event Message Subscription Registrar:事件消息訂閱登記中心,通過GUI界面,將 Event Message Subscription Configuration Center中的分發(fā)路由信息展現(xiàn)給用戶,并且允許用戶進(jìn)行事件消息訂閱路由信息的配置;
10)Event Message Destination:事件消息目的地;
11)Event Message Consumer:不同訂閱者的消費(fèi)端
寫下此隨筆,僅僅把把自己對(duì)“事件消息系統(tǒng)”的感觀認(rèn)識(shí)記錄。
由于思考和整理時(shí)間很短,此概念模型存在很多缺陷之處,還望大家多多指點(diǎn)。
posted on 2009-05-07 21:49 stone2083 閱讀(2777) 評(píng)論(2) 編輯 收藏 所屬分類: java