基于Message Queue技術(shù)的醫(yī)療信息交換與共享集成平臺研究
覃永勝①
①中山大學(xué)附屬第一醫(yī)院院辦信息網(wǎng)絡(luò)科,510080,廣東省廣州市中山二路58號
摘 要 本文首先對目前醫(yī)院信息系統(tǒng)集成方式進(jìn)行了分析,然后簡單介紹了IBM的Message Queue的技術(shù)特點,最后通過介紹重癥監(jiān)護(hù)系統(tǒng)(ICU系統(tǒng))和HIS系統(tǒng)之間的集成方案,闡述了基于消息機(jī)制構(gòu)建醫(yī)療信息交換與共享集成平臺的思路和方法。
關(guān)鍵詞 Message Queue 醫(yī)院信息系統(tǒng) 集成平臺
1 背景
隨著我國經(jīng)濟(jì)建設(shè)和醫(yī)療衛(wèi)生事業(yè)的快速發(fā)展,我國醫(yī)院信息化建設(shè)的水平有了飛速的發(fā)展和提高。已經(jīng)有越來越多的信息系統(tǒng)在醫(yī)院里發(fā)揮著越來越重要的作用,但是隨著信息系統(tǒng)的不斷增加,這些系統(tǒng)之間缺乏有效信息交換和共享的方法,形成一個個信息孤島,成為困擾醫(yī)院信息化進(jìn)一步深入發(fā)展的難題。
中山大學(xué)附屬第一醫(yī)院是華南地區(qū)最富盛名的大型綜合性醫(yī)院,醫(yī)院的信息系統(tǒng)經(jīng)過多年的建設(shè)發(fā)展,已經(jīng)相繼建立了醫(yī)院信息系統(tǒng)(HIS系統(tǒng))、醫(yī)學(xué)影像系統(tǒng)(PACS系統(tǒng))、檢驗系統(tǒng)(LIS系統(tǒng))、電子病歷系統(tǒng)(EMR系統(tǒng))、手術(shù)視頻轉(zhuǎn)播系統(tǒng)、手術(shù)麻醉系統(tǒng)、重癥監(jiān)護(hù)系統(tǒng)等信息系統(tǒng),這些系統(tǒng)不僅程序復(fù)雜、數(shù)據(jù)量大,而且使用的用戶非常多。目前這些信息系統(tǒng)之間的信息交換和共享仍然采用傳統(tǒng)的點對點(point-to-point)的方式(如圖1所示)。這種方式雖然開發(fā)和實施簡單,但是存在著明顯的缺點:首先系統(tǒng)負(fù)擔(dān)過重,某些系統(tǒng)(如HIS系統(tǒng))數(shù)據(jù)連接數(shù)過大,高峰時期有超過1100個用戶直接連接到HIS數(shù)據(jù)庫,連接數(shù)過多造成系統(tǒng)負(fù)擔(dān)過大,阻礙了正常業(yè)務(wù)的進(jìn)行;其次由于采用了緊耦合的集成方式,不利于系統(tǒng)的維護(hù),當(dāng)一個系統(tǒng)需要升級或者更換時,不同的系統(tǒng)都要進(jìn)行相應(yīng)的更改。
圖1目前醫(yī)院point-to-point的集成方式
Message Queue(MQ)是IBM公司的推出的系統(tǒng)集成的中間件產(chǎn)品,其核心思想是系統(tǒng)和系統(tǒng)之間不是直接建立連接,而是通過向隊列發(fā)送消息和從隊列中接收消息的機(jī)制是實現(xiàn)信息的交換和共享。其中消息是系統(tǒng)之間彼此傳遞數(shù)據(jù)的媒介,Queue隊列是消息的容器,應(yīng)用程序通過訪問隊列發(fā)送和獲取消息。首先,MQ可以位于不同的系統(tǒng)平臺,為多種編程語言提供了API,可以真正實現(xiàn)跨平臺的信息共享。其次,應(yīng)用程序只需要向相應(yīng)的消息隊列中發(fā)送消息,消息存放在隊列里,目標(biāo)程序可以在任何時候讀取消息進(jìn)行處理,從而實現(xiàn)異步和同步的通訊。最后,對于系統(tǒng)的升級或者變更,只要更改的應(yīng)用程序可以處理相應(yīng)的消息,其他的應(yīng)用程序就不用修改,實現(xiàn)了系統(tǒng)之間的松耦合的集成(圖2顯示了應(yīng)用程序通過MQ進(jìn)行通訊的原理)。本文將結(jié)合重癥監(jiān)護(hù)系統(tǒng)與HIS系統(tǒng)之間的集成的實例對MQ的應(yīng)用進(jìn)行詳細(xì)的闡述。
圖2應(yīng)用程序通過MQ進(jìn)行通訊
2 MQ的概述
2.1 消息(Message) 在MQ中消息包含消息描述符和數(shù)據(jù)兩部分。消息描述符主要是對消息的屬性進(jìn)行定義,比較重要的有MessageID、CorrelationID等,MessageID用來唯一標(biāo)識消息,CorrelationID是在request-reply模式下確定返回消息的標(biāo)識符,一般就是發(fā)送消息的MessageID。消息可以分為四種類別:數(shù)據(jù)消息是指不需要回應(yīng)的消息;請求消息是指需要回應(yīng)的消息;答復(fù)消息是指回應(yīng)請求消息的消息;報告消息是對某些發(fā)生事件描述的消息。消息可以根 |
|