论文部分内容阅读
摘要:随着计算机、通讯技术的发展以及信息技术在医疗行业的逐步应用,目前各级医疗机构逐步建立了以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.张云勇,张志江,刘锦德,刘韵洁.中间件技术原理与应用[M].清华大学出版社,2004.
2.杨少波.J2EEWeb核心技术[M].清华大学出版社,2011.
3.潘爱民.COM原理与应用[M].清华大学出版社,1999.
4.梅宏.软件中间件技术现状及发展[Z].
(作者单位:廊坊市人民医院信息中心)
关键词:中间件技术;医疗信息系统;三层架构
一、医院信息系统的应用现状分析
目前各级医疗机构大部分均已经部署实施了相应的医疗信息化系统如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.张云勇,张志江,刘锦德,刘韵洁.中间件技术原理与应用[M].清华大学出版社,2004.
2.杨少波.J2EEWeb核心技术[M].清华大学出版社,2011.
3.潘爱民.COM原理与应用[M].清华大学出版社,1999.
4.梅宏.软件中间件技术现状及发展[Z].
(作者单位:廊坊市人民医院信息中心)