摘要:隨著計(jì)算機(jī)、通訊技術(shù)的發(fā)展以及信息技術(shù)在醫(yī)療行業(yè)的逐步應(yīng)用,目前各級(jí)醫(yī)療機(jī)構(gòu)逐步建立了以HIS、PACS、EMR為主的各種信息系統(tǒng),實(shí)現(xiàn)了病人診療信息的數(shù)字化管理,醫(yī)學(xué)影像信息化管理等功能。在醫(yī)院信息系統(tǒng)中應(yīng)用中間件技術(shù),目的是更好地解決醫(yī)院信息系統(tǒng)在應(yīng)用中的維護(hù)、擴(kuò)展等問(wèn)題。中間件技術(shù)把系統(tǒng)模塊分為多個(gè)層次,可簡(jiǎn)化各個(gè)功能模塊內(nèi)部的復(fù)雜度,同時(shí)增強(qiáng)各個(gè)系統(tǒng)之間數(shù)據(jù)與邏輯的聯(lián)系。該技術(shù)的廣泛應(yīng)用,可以使得不同醫(yī)療信息系統(tǒng)之間的信息資源進(jìn)行無(wú)障礙共享,以滿足醫(yī)療、管理的需求。
關(guān)鍵詞:中間件技術(shù);醫(yī)療信息系統(tǒng);三層架構(gòu)
一、醫(yī)院信息系統(tǒng)的應(yīng)用現(xiàn)狀分析
目前各級(jí)醫(yī)療機(jī)構(gòu)大部分均已經(jīng)部署實(shí)施了相應(yīng)的醫(yī)療信息化系統(tǒng)如HIS(醫(yī)院信息系統(tǒng)),PACS(醫(yī)學(xué)影像存檔與傳輸系統(tǒng)),EMR(電子病歷系統(tǒng))等。其中,HIS系統(tǒng)主要負(fù)責(zé)管理病人的診療信息,也包括醫(yī)院的行政管理等內(nèi)容。HIS系統(tǒng)的應(yīng)用提高了醫(yī)院各項(xiàng)工作的效率和質(zhì)量,促進(jìn)了醫(yī)學(xué)科研、教學(xué),為其提供技術(shù)支持;改善經(jīng)營(yíng)管理,堵塞漏洞,保證了病人和醫(yī)院的經(jīng)濟(jì)利益。
PACS系統(tǒng)包括系統(tǒng)管理軟件、影像處理服務(wù)器、大容量存儲(chǔ)設(shè)備、數(shù)據(jù)備份系統(tǒng)等。由于其連接影像設(shè)備,并且傳輸數(shù)據(jù)量大,因此依賴高速傳輸?shù)膶拵ЬW(wǎng)絡(luò)。PACS系統(tǒng)的應(yīng)用,實(shí)現(xiàn)了醫(yī)學(xué)影像的信息化存儲(chǔ)管理,現(xiàn)了“無(wú)片化”,具有影響質(zhì)量高、存儲(chǔ)傳輸無(wú)失真、傳輸迅速等優(yōu)勢(shì),在很大程度上提高了醫(yī)院的診斷和治療水平。
EMR電子病歷系統(tǒng)方便了病例信息的采集,加強(qiáng)了工作流程的管理和監(jiān)控,便于信息檢索查詢,提高了臨床醫(yī)生的工作效率,提高了醫(yī)療質(zhì)量。
醫(yī)院的各個(gè)信息系統(tǒng)由于來(lái)自不同開(kāi)發(fā)商,不同的開(kāi)發(fā)平臺(tái),大都獨(dú)立運(yùn)行,各個(gè)系統(tǒng)之間的數(shù)據(jù)調(diào)用大多數(shù)通過(guò)接口來(lái)完成,而這種方式勢(shì)必會(huì)對(duì)應(yīng)用軟件的運(yùn)行速度以及數(shù)據(jù)安全性造成影響,并且隨著功能要求的變化,接口的維護(hù)、修改可能要多方協(xié)商才能完成,具有一定的局限性。這些問(wèn)題阻礙著醫(yī)院信息化的進(jìn)程。因此,如何利用網(wǎng)絡(luò)來(lái)共享資源,系統(tǒng)之間的信息共享平臺(tái)的建設(shè)、異構(gòu)數(shù)據(jù)源的連接互通等信息共享技術(shù)的應(yīng)用等研究也成為目前主要研究方向。與此同時(shí),傳統(tǒng)的C/S系統(tǒng)架構(gòu)在實(shí)際應(yīng)用中其局限性也越發(fā)明顯,其局限性表現(xiàn)在以下幾個(gè)方面。
適應(yīng)性:隨著信息技術(shù)的發(fā)展,醫(yī)療行業(yè)的軟、硬件的環(huán)境和應(yīng)用需求不斷變化,信息系統(tǒng)作為醫(yī)院管理的基礎(chǔ)設(shè)施,急需感知適應(yīng)變化。
可管理性:各個(gè)應(yīng)用系統(tǒng)領(lǐng)域問(wèn)題越來(lái)越復(fù)雜,各個(gè)系統(tǒng)的功能不斷完善,系統(tǒng)之間的信息交互增多,管理維護(hù)困難。計(jì)算機(jī)硬件、操作系統(tǒng)、網(wǎng)絡(luò)協(xié)議、數(shù)據(jù)庫(kù)系統(tǒng)以及開(kāi)發(fā)工具種類繁多,需考慮數(shù)據(jù)表示、調(diào)用接口、處理方式等諸多問(wèn)題
可移植性:對(duì)于基礎(chǔ)數(shù)據(jù)難以近一步分析整理,不同系統(tǒng)之間數(shù)據(jù)交換共享困難。
上述問(wèn)題成為醫(yī)院信息化發(fā)展的瓶頸,同時(shí)也限制了各級(jí)醫(yī)療機(jī)構(gòu)之間的信息交流,阻礙了區(qū)域化醫(yī)療的推進(jìn)。
二、三層體系結(jié)構(gòu)分析研究
?。ㄒ唬┤龑咏Y(jié)構(gòu)的基本概述
由于傳統(tǒng)的兩層C/S架構(gòu)存在上述局限性,提出了三層體系結(jié)構(gòu)。即在客戶端與數(shù)據(jù)庫(kù)之間加入“中間層”,也叫組件層。
三層結(jié)構(gòu)把數(shù)據(jù)處理的過(guò)程分解成客戶端(處理顯示層)、處理(業(yè)務(wù)邏輯層)和數(shù)據(jù)庫(kù)三部分3個(gè)層次中,系統(tǒng)的應(yīng)用程序?qū)I(yè)務(wù)規(guī)則、數(shù)據(jù)訪問(wèn)、合法性校驗(yàn)等主要功能和業(yè)務(wù)邏輯都在業(yè)務(wù)邏輯層進(jìn)行處理??蛻舳瞬恢苯訉?duì)數(shù)據(jù)庫(kù)進(jìn)行操作,而是通過(guò)COM/DCOM通訊與中間層建立連接,再經(jīng)由中間層與數(shù)據(jù)庫(kù)進(jìn)行交互。首先,數(shù)據(jù)訪問(wèn)層:主要是對(duì)原始數(shù)據(jù)透明的進(jìn)行操作,即不必考慮邏輯上要求,只為業(yè)務(wù)邏輯層或表示層提供數(shù)據(jù)服務(wù)。其次,業(yè)務(wù)邏輯層,主要是針對(duì)系統(tǒng)應(yīng)用的具體問(wèn)題進(jìn)行操作,對(duì)數(shù)據(jù)業(yè)務(wù)進(jìn)行邏輯處理,這一層級(jí)不需要考慮顯示層限制,即無(wú)論顯示層如何定義或更改對(duì)其邏輯處理均無(wú)影響。再次,處理顯示層,主要表示W(wǎng)EB方式,也可以表示其他常用方式,直接與用戶進(jìn)行交互,為用戶提供顯示服務(wù)。
?。ǘ┤龑芋w系結(jié)構(gòu)的優(yōu)勢(shì)分析
三層結(jié)構(gòu)基本上克服了兩層結(jié)構(gòu)的缺點(diǎn),增強(qiáng)了系統(tǒng)的安全性,提高了系統(tǒng)效率,便于不同系統(tǒng)之間進(jìn)行交互,增強(qiáng)了系統(tǒng)的可伸縮性,最重要的是提高了系統(tǒng)的可維護(hù)性。
三、中間件技術(shù)
中間件(Middleware)是一種軟件,處于系統(tǒng)軟件(操作系統(tǒng)和網(wǎng)絡(luò)軟件)與應(yīng)用軟件之間,使得在應(yīng)用層可以實(shí)現(xiàn)分布式處理。按照IDC的分類方法,中間件分為事務(wù)處理中間件,過(guò)程調(diào)用中間件、消息中間件、分布式對(duì)象中間件等。
?。ㄒ唬┲虚g件的分類及其特點(diǎn)
1.事務(wù)處理中間件(Transaction Processing Middleware)。事務(wù)處理中間件其主要應(yīng)用為聯(lián)機(jī)交易的事物處理,需要處理大量的分布式事物,需要涉及多個(gè)數(shù)據(jù)庫(kù),且允許這些數(shù)據(jù)庫(kù)異構(gòu),需要處理大量的并發(fā)進(jìn)程,涉及到操作系統(tǒng)、文件系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)等。通過(guò)事務(wù)處理中間件簡(jiǎn)化應(yīng)用開(kāi)發(fā)。主要負(fù)責(zé)處理聯(lián)機(jī)交易過(guò)程中分布式交易的完整性、并發(fā)控制、負(fù)載均衡以及出錯(cuò)恢復(fù)等。
2.過(guò)程調(diào)用中間件(Remote Procedure Calls,RPCs)。過(guò)程調(diào)用中間件透明性完全屏蔽了RPC傳送機(jī)制的細(xì)節(jié),一個(gè)專門的RPC工具可支持一種或多種不同的傳輸機(jī)制。成功的RPC實(shí)現(xiàn)要求調(diào)用者能迅速有效地找到被調(diào)用例程所在的服務(wù)器,而完成此搜索的一種方法是建立從子例程到服務(wù)器的映射數(shù)據(jù)庫(kù)。各映射數(shù)據(jù)庫(kù)中的所有條目可進(jìn)行修改,以便動(dòng)態(tài)地分配目標(biāo)服務(wù)器,達(dá)到RPC的一次調(diào)用到另一次調(diào)用的變更。在使用中被調(diào)用的子例程名要與映射數(shù)據(jù)庫(kù)中的名字相匹配,一旦找到服務(wù)器,RPC使客戶機(jī)和服務(wù)器相互認(rèn)證,檢查它們的安全特權(quán)級(jí)別。RPC還允許用戶采用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。因此RPC與其集成服務(wù)一起構(gòu)成了一個(gè)中間件。
過(guò)程式中間件使得一個(gè)主機(jī)上的應(yīng)用可以在網(wǎng)絡(luò)環(huán)境下用過(guò)程調(diào)用的方式來(lái)調(diào)用部署在另一個(gè)主機(jī)上的應(yīng)用中的過(guò)程。新近發(fā)展起來(lái)的一項(xiàng)技術(shù)是XMLRPC,它使得在Internet異構(gòu)環(huán)境下應(yīng)用能夠使用RPC。過(guò)程式中間件有較好的異構(gòu)支持能力,簡(jiǎn)單易用,但在易剪裁性和容錯(cuò)方面有一定的局限性。
3.消息中間件(Message-Oriented Middleware)。消息中間件,是一類以消息為載體進(jìn)行通信的中間件,利用高效可靠的消息傳遞機(jī)制進(jìn)行數(shù)據(jù)交流。在不同的網(wǎng)絡(luò)平臺(tái)、不同的操作系統(tǒng)乃至不同的網(wǎng)絡(luò)協(xié)議上的應(yīng)用程序之間傳遞消息。消息中間件的通信模型有兩類:消息隊(duì)列和消息傳遞。消息隊(duì)列是一種間接通信模型,其通信基于隊(duì)列來(lái)完成。將數(shù)據(jù)看成一個(gè)消息,具體的數(shù)據(jù)結(jié)構(gòu)可以根據(jù)需要和開(kāi)發(fā)平臺(tái)來(lái)定義。把數(shù)據(jù)先形成一個(gè)消息,發(fā)布到一個(gè)消息隊(duì)列里面,再通過(guò)一定規(guī)則去取這個(gè)消息解析再使用插入到數(shù)據(jù)庫(kù)中,這個(gè)過(guò)程可以是一對(duì)一,以可以是多對(duì)多。在復(fù)雜的網(wǎng)絡(luò)環(huán)境下,例如多個(gè)通訊方式,多個(gè)業(yè)務(wù)系統(tǒng)之間進(jìn)行消息交互,他的優(yōu)點(diǎn)是顯而易見(jiàn)的。而消息傳遞是一種直接通信模型,其消息被直接發(fā)給感興趣的實(shí)體。消息中間件在支持多通信規(guī)程、可靠性、易用性和容錯(cuò)能力等方面有顯著優(yōu)勢(shì)。
4.分布式對(duì)象中間件(Distributed Object Middleware)。分布式對(duì)象中間件的任務(wù)是處理分布式對(duì)象之間的通信?;诮M建思想,由一組對(duì)象提供系統(tǒng)服務(wù),對(duì)象之間能夠跨平臺(tái)通信。分布對(duì)象中間件支持分布對(duì)象模型,在分布異構(gòu)環(huán)境下可面向?qū)ο蠓椒ê图夹g(shù)來(lái)開(kāi)發(fā)應(yīng)用。OMG組織是分布對(duì)象技術(shù)標(biāo)準(zhǔn)化方面的國(guó)際組織,它制定出了CORBA標(biāo)準(zhǔn)等,DCOM是微軟推出的分布對(duì)象技術(shù),還有JAVA商業(yè)應(yīng)用組件技術(shù)EJB。COM+和.NET是其進(jìn)一步的發(fā)展與深化。分布式技術(shù)將資源整合在一起,對(duì)客戶是透明的,無(wú)需區(qū)分本地操作和遠(yuǎn)程操作。
5.隨著新的應(yīng)用形式的出現(xiàn)以及傳統(tǒng)應(yīng)用環(huán)境的改變,中間件技術(shù)存在一些變化,比如面對(duì)群件、多媒體、實(shí)時(shí)系統(tǒng)以及移動(dòng)系統(tǒng)所提出的新的要求,這些應(yīng)用系統(tǒng)存在的共同特點(diǎn),即都需要根據(jù)運(yùn)行環(huán)境的改變而動(dòng)態(tài)的改變。
因此傳統(tǒng)的中間件平臺(tái)需要引入新的機(jī)制來(lái)實(shí)現(xiàn)具有開(kāi)放性的中間件系統(tǒng)。
6.中間件的優(yōu)點(diǎn)。應(yīng)用中間件技術(shù),在軟件開(kāi)發(fā)的角度能夠有效地縮短應(yīng)用的開(kāi)發(fā)周期,節(jié)約人力和資源投入,同時(shí)增強(qiáng)了系統(tǒng)的質(zhì)量和可維護(hù)性,減少新舊系統(tǒng)維護(hù)的開(kāi)支。在醫(yī)院應(yīng)用的角度,由于醫(yī)院本身工作的特殊性,需經(jīng)常增加或修改使用需求,該技術(shù)很大程度上減少了程序的維護(hù)工作以及維護(hù)時(shí)間,對(duì)功能的修改很大程度上只是對(duì)醫(yī)院系統(tǒng)的邏輯維護(hù),從而增大了系統(tǒng)的可維護(hù)性和易操作性。同時(shí)便于不同應(yīng)用系統(tǒng)之間數(shù)據(jù)信息的交互,有利于各應(yīng)用系統(tǒng)的整合完善。
?。ǘ┲虚g件技術(shù)的實(shí)現(xiàn)
1.J2EE技術(shù)。J2EE定義了一套標(biāo)準(zhǔn)化的組件來(lái)簡(jiǎn)化N層級(jí)應(yīng)用的開(kāi)發(fā)。在內(nèi)部網(wǎng)絡(luò)中使用J2EE結(jié)構(gòu)可有效地代替二層模型。用J2EE開(kāi)發(fā)N層應(yīng)用包括將二層化結(jié)構(gòu)中的不同層面切分成許多層。在應(yīng)用中能夠?yàn)楦鞣N服務(wù)提供一個(gè)相對(duì)獨(dú)立的分開(kāi)的層,例如,動(dòng)態(tài)生成顯示應(yīng)在Web服務(wù)器端進(jìn)行,業(yè)務(wù)邏輯則在邏輯處理層中進(jìn)行,數(shù)據(jù)訪問(wèn)則在原始數(shù)據(jù)的操作層中進(jìn)行,使得企業(yè)級(jí)應(yīng)用具有很強(qiáng)的伸縮性。
由于J2EE建立在JAVA2平臺(tái)標(biāo)準(zhǔn)版(J2SE)的基礎(chǔ)上,所以具備了J2SE的所有優(yōu)點(diǎn)和功能。包括“編寫一次,到處可用”的可移植性、通過(guò)JDBC訪問(wèn)數(shù)據(jù)庫(kù)、同原有企業(yè)資源進(jìn)行交互的CORBA技術(shù)以及一個(gè)經(jīng)過(guò)驗(yàn)證的安全模型。在這些基礎(chǔ)上,J2EE又增加了對(duì)EJB(企業(yè)級(jí)JAVA組件)、JAVASERVLETS、JAVA服務(wù)器頁(yè)面(JSPS)和XML技術(shù)的適應(yīng)性。
2.COM組件。COM是定義軟件組件互相通信的一種方式,是一種二進(jìn)制和網(wǎng)絡(luò)標(biāo)準(zhǔn),其忽略了操作系統(tǒng)以及編寫語(yǔ)言,允許兩個(gè)組件互相通信。COM力圖做到以近似一致的方式使用和開(kāi)發(fā)組件,從體系上保證所開(kāi)發(fā)的組件無(wú)時(shí)間差異性(允許用戶透明的使用組件的不同版本)、無(wú)功能差異性(按相同的方式來(lái)處理變化的組件)、位置透明性(不表現(xiàn)出對(duì)組件所處位置的依賴)、語(yǔ)言無(wú)關(guān)性(與編程語(yǔ)言的類型無(wú)關(guān))以及運(yùn)行環(huán)境的無(wú)關(guān)性(可跨平臺(tái)運(yùn)行)等。
開(kāi)發(fā)自定義的COM組件就如同開(kāi)發(fā)動(dòng)態(tài)的、面向?qū)ο蟮腁PI。多個(gè)COM對(duì)象可以連接起來(lái)形成應(yīng)用程序或組件系統(tǒng)。并且組件可以在運(yùn)行時(shí)刻,在不被重新鏈接或編譯應(yīng)用程序的情況下被卸下或替換掉。
組件架構(gòu)的優(yōu)點(diǎn)就是應(yīng)用可以隨時(shí)間的流逝而發(fā)展進(jìn)化。除此之外,使用組件還有一些可以使對(duì)已有應(yīng)用的升級(jí)更加方便和靈活的優(yōu)點(diǎn),如應(yīng)用的定制,組件庫(kù)以及分布式組件等。
上述技術(shù)的應(yīng)用對(duì)于縮短程序的開(kāi)發(fā)周期、減少開(kāi)發(fā)風(fēng)險(xiǎn)有明顯作用,更重要的是提高了應(yīng)用系統(tǒng)的質(zhì)量,由于使用中間件技術(shù),只需對(duì)業(yè)務(wù)邏輯層進(jìn)行維護(hù),減少了新舊系統(tǒng)維護(hù)開(kāi)支,從而很大程度上增加了系統(tǒng)的可維護(hù)性。
四、結(jié)束語(yǔ)
綜上所述,網(wǎng)絡(luò)技術(shù)及上述應(yīng)用的快速發(fā)展與普及,使計(jì)算機(jī)軟件所面臨的環(huán)境開(kāi)始從靜態(tài)封閉逐步走向開(kāi)放、動(dòng)態(tài)和多變的環(huán)境。軟件系統(tǒng)為了適應(yīng)這樣一種發(fā)展趨勢(shì),將會(huì)逐步呈現(xiàn)出多目標(biāo)、連續(xù)反應(yīng)式的結(jié)構(gòu)形態(tài)。這種新型的軟件形態(tài)將使系統(tǒng)軟件和支撐平臺(tái)的研究重點(diǎn)開(kāi)始從操作系統(tǒng)等轉(zhuǎn)向新型中間件平臺(tái),必將帶來(lái)應(yīng)用系統(tǒng)體系的變化。而通過(guò)中間件技術(shù)在醫(yī)院信息系統(tǒng)的應(yīng)用,可有效幫助醫(yī)院升級(jí)和管理其分散的基礎(chǔ)業(yè)務(wù)系統(tǒng)以形成集中管理平臺(tái),近而實(shí)現(xiàn)各信息系統(tǒng)數(shù)據(jù)的集成,使得來(lái)自不同醫(yī)療機(jī)構(gòu)、不同應(yīng)用系統(tǒng)的信息進(jìn)行交換和共享,醫(yī)院在信息化發(fā)展中掌握主動(dòng)權(quán),將有效地提高醫(yī)院的診療水平,使醫(yī)院的日常管理工作更為便捷。
參考文獻(xiàn):
1.