智慧医疗基础平台-06

文章探讨了医疗业务的复杂度,分为功能型和管理型业务,并介绍了两种开发模式:开发脚手架和低代码平台。低代码平台适合简单业务,而复杂业务可能需要原生技术。技术模块涉及数据库选择(OLTP,OLAP,混合型)、基础组件如分布式缓存和消息中间件,以及服务协同和功能模块如权限管理和流程引擎。文章强调了微服务和服务协同在系统中的重要性,并讨论了运维管理的需求。
摘要由CSDN通过智能技术生成

平台规划-业务平台

一、业务复杂度

按照医疗业务的复杂度,可分为功能型业务和后台管理型业务:

  1. 功能型业务需要完成特定的业务功能,需要执行复杂的SQL和冗长的业务调用链,页面布局复杂,呈现数据多而且紧凑;

  2. 管理型业务相对简单,面向中后台管理,主要是围绕某个业务表单完成数据增删改查等功能,页面布局简约,风格扁平靓丽,呈现数据较少。

二、开发模式

医疗体系是一个复杂业务的综合体,在区域卫建和医疗机构里面的业务系统有数百个,相关支撑的业务厂家也有几十上百家,除去古老的C/S桌面程序,基于WEB的业务系统因为业务复杂度和受众群体的使用范围,单体架构,前后端分离架构,微服务架构的系统都会并存在医疗体系中。为了加快软件开发业务落地,可以采用开发脚手架或者低代码开发平台作为开发的技术底座。

1、开发脚手架

基于spirngboot/springcloud的脚手架是一组预置的文件和目录结构,可以快速创建新的项目,提供基础代码、通用组件,代码自动生成,依赖管理、构建和打包工具等。使用脚手架可以减少重复性的工作,规范化项目结构,提高代码质量。脚手架需要开发者自己编写和维护,适合于自由度要求较高的项目。

2、低代码平台

低代码平台是互联网公司想进入toB/toC是市场,但避免陷入业务泥潭的产出物,提供可视化界面和拖拽式操作来帮助用户快速构建应用程序。低代码平台通常涵盖了从数据建模到用户界面设计、业务逻辑编排、自动化测试等各个方面,降低了开发门槛,并能够有效地提高开发效率和质量。考虑到低代码平台自动生成的代码结构相对固定,不可能覆盖所有的业务需求,尤其是与特定硬件、软件或数据源进行集成,则需要更高级的编程技能和自定义代码,这应该超出了目前低代码平台的能力范围。

之前也关注了国内的一些低代码平台,大部分还限于处理业务表单+工作流的模式,远未达到当年桌面开发的RAD(dephi,vb,pb)那种能力。如果仅作为后台管理模块的页面,基本能应付;如果是复杂的业务页面,原生技术应该更合适。

但基于spring脚手架的基础开发框架是必要的,添加开箱可用的基础模块,解决通用基础功能,包括权限认证,日志,网关,调用链,工作流等处理。简单的增删改查业务采用基于表结构的代码生成方式,复杂的业务采用传统的开发方式。

采用 git + jenkins 实现日构建/周构建的devops模式,加速代码的发布和版本的迭代。同时考虑到医疗业务系统的规模并不大,采用Docker/Compose/Swarm部署即可,降低部署成本和复杂度,同时满足业务的需求,提高开发效率和产品质量。

三、技术模块

1、数据库,数据库目前有三种类型:交易型、分析型和混合型库。

业务系统采用OLTP,数据中心和指标计算一般采用OLAP。目前有一种混合型数据库,同时兼备TP和AP能力,比如GP6/GP7,对于资源比较紧缺的业务系统是比较合适的。在T+1的业务场景中,白天支撑数据聚合与数据共享的功能,晚上执行数据分析和指标计算。

2、基础组件,用来支撑系统运行的基础设施

  • 分布式缓存和内存数据库,可以采用redis或者ignite,ignite本身就支持分布数据,SQL语法,冷热数据自动迁移等,在业务协同处理引擎、摘要信息查询,以及EMPI的处理方面可以提供基础支撑。

  • 消息中间件常见的有Robbitmq,Racketmq,Kafka,因为业务支撑特性和性能有较大差异,需要根据不同业务场景进行选择。

  • 搜索引擎一般采用ES。在不着重考虑切分词的场景下,可以替换成clickhouse。考虑其架构特点,采用维度退化,范式退化的方式设计大宽表,在摘要信息查询,日志查询,资源中心热点数据的高频查询方面提供基础支持。

3、服务协同

这里服务协同不是OA的办公协同,而是基于微服务体系下的服务编排能力,支持串行/并行/选择的路径执行模式,调用WebService和Rest接口,如果同时支持人工活动的表单页面,将兼容OA的办公流程模式。

四、功能模块

  1. 权限管理:提供基于角色控制,可控制访问资源页面、功能按钮,过滤不同部门、不同分公司、不同组织的业务数据。

  2. 流程引擎:如果平台只用于OA办公环境中,可以整合Activiti,flowable,commda作为OA办公工作流的基础实现。如果需要服务编排功能实现类似ESB/SOA的功能,可以自研引擎,再集成web服务和Rest的接口调用。如果自研服务编排引擎包括了人工活动(业务表单)的处理,这样就能实现人机流程的全线贯通。

  3. 集成中心:这里包括2个方面,一个是应用集成,包括身份认证,鉴权等基础能力;另外是业务集成,通过类似个人门户,把消息和代办以及重要信息在首页展示。

  4. 门户管理:自定义PORTAL,支持栏目模板自定义,支持门户布局配置,支持不同风格的部门、单位、个人的首页门户配置。

  5. 运维管理: 除了基于微服务的服务治理、链路追踪、熔断保障功能以及行为统计和日志分析等功能,运维管理还包括系统性能优化、容量规划、故障处理、安全防护和备份恢复等方面的工作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值