分享

基于互联网架构的一体化HIS&EMR设计与实现

 静思之 2019-08-22

导读:改变传统HIS的两层或三层架构设计模式,采用分布式服务架构设计方式降低系统模块之间的耦合,能够按业务模块实现集群化部署,同时保证产品的高可用性。采用阿里巴巴开源服务治理框架Dubbo,结合服务注册中心Zookeeper、负载均衡模块Nginx、院内集成平台软件Ensemble等实现院内一体化HIS&EMR的分布式服务架构搭建。采用分布式服务架构之后,系统模块之间的耦合度降低,业务扩展、系统升级或版本变更等更加方便快捷,集群化部署解决了单点故障和高并发问题。采用互联网架构实现HIS&EMR产品很好的弥补了传统HIS耦合度高,扩展困难等诸多问题。

1 引言
目前大部分医院HIS系统的架构仍为传统的两层或三层架构模型。随着医疗行业应用的不断扩展,对HIS&EMR产品的稳定性、可靠性和可扩展性提出了更高的要求。如何实现HIS系统的模块化管理与集群化部署一直是一个亟待解决的问题。基于互联网架构的HIS&EMR产品采用分布式服务架构设计方式实现了系统模块的分布式管理,通过集群化部署方式解决了单点故障、负载均衡等问题。模块之间通过服务方式调用,减少了模块之间的耦合。

2  HIS&EMR架构设计
2.1技术选型  结合目前互联网产品的现状,采用主流的开源框架来搭建整套系统。一体化HIS&EMR产品的整体架构包括阿里巴巴开源的分布式服务治理框架Dubbo,服务注册中Zookeeper、负载均衡模块F5与Nginx、开源的消息中间件HornetQ、文件系统服务NFS、缓存服务器Redis,应用服务器Jboss,服务总线Ensemble等。架构模型见图1。

图1  系统整体的架构模型

2.2  架构设计
2.2.1  单点登录(SSO)  单点登录是互联网产品的必备功能。针对单点登录功能[4],设计了医院单点登录接口规范和统一的登录Portal,所有接入的HIS&EMR模块及第三方系统都必须满足该集成规范。当用户访问Portal的时候,根据用户提供的凭证信息进行身份校验,如果通过校验,将为用户生成票据(Ticket),用户通过App Portal访问业务系统时,业务系统需检查Ticket的合法性,如果通过校验,用户就可以不用再次登录而直接访问业务系统。

2.2.2  分布式集群服务设计  一体化HIS&EMR产品采用集群部署方式。传统的两层架构或三层架构架构模式是前端直接连接到数据库进行操作,而基于互联网架构的HIS&EMR产品连接的是Dubbo RPC服务。一体化HIS&EMR目前分为BMS(收费管理)、ERS(检查预约)、PCA(患者账户管理)、PDS(供药管理)、ISMS(票据管理)、MIPS(医保)、UPT(对账管理)、BDS(基础字典)8个模块 ,各个模块之间通过Dubbo服务进行数据交互,最终 Dubbo服务再通过TCP方式连接到缓存服务器Redis、HornetQ消息中间件和Oracle数据库进行数据持久化操作。此种设计方式易于模块的扩展与集群化部署,如图2。

图2  分布式集群服务设计

目前医院生产环境中,在用的RPC服务3000余个,Jboss应用服务器40余个。用户登录信息、主数据字典及HIS内部的部分业务数据都存放在缓存服务器Redis中。缓存服务器能提供高性能的读写服务,合理使用可以有效降低数据库和其他网络资源请求,从而提高系统性能和吞吐量。生产环境我们进行了主从配置,通过Redis Keepalived来实现Redis的高可用功能,防止单点故障而造成业务不可用的情况。

2.2.3第三方系统集成  除了一体化HIS&EMR系统内部的架构设计,在与第三方系统进行数据交互的时候,采用服务总线模式。考虑到集成平台软件的稳定性及可维护性,最终决定采用intersystems 的数据平台软件Ensemble。目前医院已完成了将近30余个第三方厂商,40多个模块的接入,包括检查检验、护理、手术麻醉、重症、静配等,日消息量达到50余万条。同时在IHE、DICOM、HL7等国际标准的基础上制定了覆盖医疗所有业务流程的系统集成规范,为开发基于规范的系统集成平台,为遗留的、当前的以及将来的系统提供了一个统一标准的数据交换和工作流协同的平台。我院目前有如下几种集成方式。

(1)消息集成  业务系统之间实时或异步交换信息和相互调用,厂商需根据集成规范实现对HL7(V2.6)、WebService标准消息的对接技术支持。

(2)服务集成  服务集成是在消息集成的基础上,采用SOA架构,为用户提供标准、健壮的企业服务总线,提供异构系统的接口协议转换、消息格式转换、服务封装、服务组装等功能,适合于以服务方式(如Web服务)组合不同的应用系统资源。

(3)报告中心  我院各种检查、检验报告都进行了集中管理,各医技厂商的报告按照统一格式上传后形成报告中心,业务系统如果要进行报告中心的数据集成,数据格式必须遵循我院的标准,支持国家基本数据集标准。

通过服务总线设计模式,结合相关的医疗卫生行业标准、国家标准等,已逐步建立起了规范的医院信息平台。该平台实现了第三方系统接入的解耦,便于今后功能模块的扩展与维护。

2.2.4  SRMC——站点可靠性管理中心  快速实现基础服务运维自动化是互联网产品的一大特色。为了最大化的提高运营效率,开发了 Site Reliability Manager Center (SRMC)系统。该系统包括应用部署、脚本归档、应用升级管理、跨版本升级、数据分析等诸多功能。实现了从配置管理,到作业执行、任务调度和监控自愈,再通过运维大数据分析辅助运营决策,全方位覆盖业务运营的全周期保障管理。

3  小结
采用布式服务架构设计方式使得模块功能的更新迭代更加容易,且影响面小;针对部分高并发业务能够通过横向扩展的方式处理。ESB服务总线实现了EMR与第三方业务模块数据交互的解耦,业务系统之间的交互服务更加清晰。SRMC系统提升了运维效率,保障了产品的稳定性。

文章来源:《中国数字医学》杂志2019年第4期,作者及单位:李中鹏 瞿怀荣 赵巍 张顼,连云港市第一人民医院。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多