摘 要
信息集成平台一个关键的功能是消息的交换与传递,消息的交换与传递当放到一个真实的业务环境中,对送达时序有业务上的要求,以保障各业务节点获得及时、完整、有效的消息。本文以具体的业务场景引出消息时序的分类,同时以具体的案例对不同的消息时序进行分类介绍与说明。结论:信息集成平台应有一定的消息时序管理功能,同时需要对消息的完整性进行管理。
关键词 :集成平台;同步消息;消息时序
正文
1、引 言
信息集成平台的实际的生产环境中解决数据交换与传递时,通常会遇到以下几种业务场景:
1、同类消息送达时序:同类消息在不同的业务节点进行更新,以住院病人信息举例说明,病人常规的基本信息由住院登记人员进行录入;护士接诊时,护士要对病人的床位、医师、护士等相关信息进行更新;手术前后医师会对病人的营养膳食进行更改。如果第三方系统需要病人基本信息时,需要在每个业务节点对病人信息更改后的完整信息给到第三方的系统。对于同类信息在不同的业务节点进行更新后投递给第三方系统在本文中定义为同类消息送达时序。
2、不同消息送达时序:以检查申请与检查作废为列,EMR作为检查申请单的业务申请者,PACS作为检查申请单的接收者,这里就会产生两条消息:一条为检查申请单申请消息;另一条检查申请单作废消息,他们有先后顺序关系。PACS先处理检查申请单申请消息、然后再进行检查申请单作废消息处理,这样才能保证PACS接收消息后业务数据是正确的,如果出现先接收检查申请单作废消息、再处理检查申请单申请消息,很显然会导致EMR与PACS信息不致,这种不同类别消息的送达时序在本文中定义为不同消息送达时序。
3、同步消息送达时序:通过平台进行消息交换与传递时,多数情况下是异步消息,但也有一些对响应要求很高的场景,如自助机缴费后要调用HIS的发票信息进行印,这种情况下的两个消息时序(由自助机录入病人收费项目信息、由HIS产生的发票信息)在本文定义为同步消息时序。
2、同类消息送达时序
同类消息送达时序在实际的业务场景中会有几个具体的业务要求:
1、支持各业务节点信息变化录入的系统通常只会提供变化的业务信息给平台,如在病人主管医师发生变化,在此业务环节通常的做法会把变化后的主管医师信息提供平台,而不会把其它没有变化的信息如护士信息、营养膳食信息等提供给平台,同时从减轻系统的复杂度的角度来说,同类消息各业务节点的数据变化的采用统一接口方法与接口参数调用会减轻系统的复杂度,否则,对于各种场景我们要进行穷举,形成不同的接口方法与接口参数给系统调用,这种方式是十分不科学的;
2、第三方系统接收同类消息时通常采用的同样接口方法与参数进行消息的处理,所以他们并不关心具体的业务节点对于某个信息的修改,如住院病人信息中医师、护士、营养膳食等信息发生变化时,第三方系统采用接收完整的住院病人信息,而不是采用接收某个业务节点变化信息,如变化后的医师、护士、营养膳食等信息;如果采用获取独立变化的信息,如医师、护士、营养膳食等,第三方系统接收消息时要穷举各种变化场景,这样接口数量及程序复杂会增加很多倍,并且有时并不能穷举各种将来的变化。
上述业务场景的特点,引出对于平台对同类消息时序送达的几个原则:
1、业务节点发生变化时,支撑业务变化的系统调用平台提供的统一接口方法与接口参数进行消息发布,而发布消息时只发布业务节点引起变化的信息,不需要组装所有的信息发布给平台,平台接收到变化的消息后,对变化数据进行更新与整理;
2、业务节点发生后,接收消息的第三方系统调用平台提供的统一的方法与接口参数进行消息的获取,不关心某个具体的数据变化,平台提供给接收系统的消息是业务节点发生变化后的完整的信息。
3、第三方获取平台同类消息时,平台对于不同时间点变化的消息需要进行管理有效的时序管理,实际业务场景中存在不同的业务节点对同样的数据项处理,如住院病人信息在的住址信息有可能在护士站与医师都可能更改,如果同类消息出现时序上的混乱,则有可能导致第三方系统获取消息后与提供数据的系统不致的情况。
3、不同类消息送达时序
不同类消息送达时序在实际的业务场景中会涉及几个具体的业务要求:
1、发布系统发布消息时要保障发布的消息的先后顺序,如检查申请单申请信息与检查申请作废信息两条消息给到平台时,检查申请单申请信息要先于检查申请作废信息给出;
2、接收系统接收消息时要及时处理各种消息,不能积压消息不处理,这样会导致大量
在某个时间接收到老旧的消息。
业务系统对于消息的处理要求是保证不同类消息送达时序的重要保障措施,同时平台需要对进入平台的消息时序进行管理:
1、平台接收消息时,对先送达的消息需放置于消息队列的前面,对于后送达的消息放置于消息队列的队尾;
2、平台发送消息给接收系统时,根据先进先出原则把消息投递给第三方接收系统。
4、同步消息送达时序
同步消息通过平台这个连接实现在一个事物中完成两个不同的系统的消息交换,及时性
是同步消息的一个十分重要的特性,消息时序也变得十分简单,平台内部的消息时序采用如下的机制实现:
1、调用方调用同步消息服务接口发布消息给平台;
2、平台获得调用方的消息后,转换成被调用方的消息格式;
3、平台调用被调用方提供服务接口获取消息,同时转成请求方的消息格式;
4、平台返回消息给调用方。
总结
本文以信息集成平台消息时序作为探讨的基础,通过对业务场景的分析引出了平台中消息时序的分类与实现方法,对不同的消息时序在信息集成平台管理方法进行了剖析,以期待在实际的生产场景中发挥作用。
|