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