诊疗服务器系统及其通信方法与流程

文档序号:18684816发布日期:2019-09-13 23:47阅读:302来源:国知局
诊疗服务器系统及其通信方法与流程

本发明涉及通信领域,具体而言,涉及一种诊疗服务器系统及其通信方法。



背景技术:

针对诊疗项目服务器业务复杂、耦合度高、特别用户有在线概念,当服务器出问题或更换服务器时会导致用户全部掉线,影响很大的问题,设计一种服务器架构,解决上述种种问题,使服务器不仅在开发维护,更甚在用户体验上带来很大的提升。

相关技术中,一个诊疗项目中单个服务器承载的业务多,且各个服务器之间有一定的耦合,这就导致牵一发而动全身,一个点出问题,会连锁反应引起其它模块的问题,严重的会导致整个服务器系统瘫痪,用户最终无法使用产品。

图1为根据相关技术的服务器架构的示意图。如图1所示,该服务器架构中,接入服务器(PES)臃肿复杂,为维护带来极大不便。PES2结构和PES1一样,随着用户量的上升,同样的问题是要面对的。从产品开发过程来看,随着用户量的上升,经常遇到,由于PES某功能模块或其自身,或者与数据库交互压力过大导致整个PES异常,同时定位困难,进而影响用户的使用。



技术实现要素:

本发明的主要目的在于公开了一种诊疗服务器系统及其通信方法,以至少解决相关技术的服务器架构中,服务器业务复杂、耦合度高,当服务器出问题或更换服务器时会导致用户全部掉线,影响很大的问题。

根据本发明的一个方面,提供了一种诊疗服务器系统。

根据本发明的诊疗服务器系统包括:仅负责用户登录和注册业务的接入服务器;消息服务器,与所述接入服务器相连接;用户配置及账户管理服务器服务器,与所述接入服务器相连接;诊疗室管理服务器,与所述接入服务器相连接;其中,所述消息服务器、所述配置管理服务器以及所述诊疗室管理服务器之间相互独立。

根据本发明的另一方面,提供了一种诊疗服务器系统的通信方法。

根据本发明的诊疗服务器系统的通信方法包括:接入服务器基于TCP链接接收来自于客户端的第一数据包;所述接入服务器根据所述第一数据包中的包类型字节判断所述第一数据包为发送至配置管理服务器的数据包;所述接入服务器根据所述第一数据包中的queryID判断该数据包所属的配置管理服务器;所述接入服务器将所述第一数据包的头部去掉,套上数据后发送至所述所属的配置管理服务器。

根据本发明的又一方面,提供了一种诊疗服务器系统的通信方法。

根据本发明的诊疗服务器系统的通信方法包括:接入服务器基于TCP链接接收来自于客户端的第三数据包;所述接入服务器根据所述第三数据包中的包类型字节判断所述第三数据包为发送至诊疗室管理服务器的数据包;所述接入服务器根据所述第三数据包中的queryID判断该数据包所属的所述诊疗室管理服务器;所述接入服务器将所述第三数据包的头部去掉,套上数据后发送至所述所属的所述诊疗室管理服务器。

根据本发明的再一方面,提供了一种诊疗服务器系统的通信方法。

根据本发明的诊疗服务器系统的通信方法包括:接入服务器基于TCP链接接收来自于客户端的第五数据包;所述接入服务器根据所述第五数据包中的包类型字节判断所述第五数据包为发送至消息服务器的数据包;所述接入服务器根据所述第五数据包中的queryID判断该数据包所属的消息服务器;所述接入服务器将所述第五数据包的头部去掉,套上数据后发送至所述所属的消息服务器。

与现有技术相比,本发明实施例至少具有以下优点:提供了一种新的诊疗服务器系统架构,接入服务器只负责登录及注册相关的业务功能,减轻接入服务器的负担,其它业务根据功能的不同,设计不同的独立服务器来处理,降低耦合度,提高服务器的健壮性。

附图说明

图1为根据相关技术的服务器架构的示意图;

图2为根据本发明实施例的诊疗服务器系统的结构框图;

图3为根据本发明优选实施例的诊疗服务器系统的结构框图;

图4为根据本发明优选实施例的PES服务器负载均衡示意图;

图5为根据本发明优选实施例的UCS服务器负载均衡示意图;

图6为根据本发明优选实施例的DCMS服务器负载均衡示意图;

图7为根据本发明优选实施例的MSGS服务器负载均衡示意图;

图8为根据本发明优选实施例的诊疗服务器系统的架构图;

图9为根据本发明优选实施例一的诊疗服务器系统的通信方法的流程图;

图10为根据本发明实例的诊疗服务器系统的通信方法的流程图;

图11为根据本发明优选实施例二的诊疗服务器系统的通信方法的流程图;以及

图12为根据本发明优选实施例三的诊疗服务器系统的通信方法的流程图。

具体实施方式

下面结合说明书附图对本发明的具体实现方式做一详细描述。

图2为根据本发明实施例的诊疗服务器系统的结构框图。如图2所示,该诊疗服务器系统包括:仅负责用户登录和注册业务的接入(PES)服务器20;消息(MSGS)服务器21,与上述PES服务器20相连接;配置管理服务器(UCS)服务器22,与上述PES服务器20相连接;诊疗室管理(DCMS)服务器23,与上述PES服务器20相连接;其中,上述MSGS服务器21、上述UCS服务器22以及上述DCMS服务器23之间相互独立。

相关技术的服务器架构中,PES服务器臃肿复杂,为维护带来极大不便。如图1所示,本发明提供的新的诊疗服务器系统架构中,PES只负责登录及注册相关的业务功能,减轻PES的负担,其它业务根据功能的不同,设计不同的独立服务器来处理,降低了耦合度,提高了服务器的健壮性。

需要说明的是,上文提到的诊疗室管理服务器(DCMS)为主要负责管理所有频道的服务器。上文提到的配置管理服务器(UCS)为主要负责用户配置及账户管理的服务器。上文提到的消息服务器(MSGS)为负责消息处理及管理的服务器。上文提到的接入服务器(PES)为对用户进行接入的服务器,例如,该接入服务器为特定会员号段的用户提供服务,负责用户登录等逻辑功能。

优选地,上述PES服务器20可以进一步包括:第一接收模块(图3中未示出),设置于接收来自于上述MSGS服务器21、上述UCS服务器22、和/或上述DCMS服务器23的数据;第一发送模块(图3中未示出),与上述第一接收模块相连接,设置于将上述第一接收模块接收到的数据转发至客户端;第二接收模块(图3中未示出),设置于接收来自于上述客户端的数据;第二发送模块(图3中未示出),与上述第二接收模块相连接,设置于将上述第二接收模块接收到的数据转发至上述MSGS服务器、上述UCS服务器、和/或上述DCMS服务器。

由此可见,PES此时仅作为唯一入口,负责客户端登录后和各个业务服务器的交互,仅仅转发数据包而已,不做其它任何操作。

优选地,如图3所示,上述诊疗服务器系统还可以包括:一个或多个新业务服务器24(图3只示出一个),均与上述PES服务器相连接,用于承载新增加的业务,其中,上述业务服务器、上述MSGS服务器、上述UCS服务器以及上述DCMS服务器之间各个服务器相互独立。

优选地,如图3所示,上述诊疗服务器系统还可以包括:客户端(CLIENT)25,与上述PES服务器相连接;网站(WEB)服务器26,分别与上述UCS服务器和MSGS服务器相连接。

优选地,如图3所示,上述诊疗服务器系统还可以包括:网守服务器(PGKS)27,与客户端相连接,用于为每个上述PES服务器均分配一个对应的用户标识userID区间段,并将用户所属的PES服务器的信息通知该用户的客户端。

需要说明的是,上述网守服务器(PGKS)负责用户注册、会员号分配等功能。

以下结合图4进一步描述上述优选实施方式。

如图4所示,PES服务器为用户登录的唯一入口,负责用户注册相关及登录的功能。服务器的使用每个账户的唯一标识为userID,每个userID是独立的,而从量的考虑来说,负载均衡的设计初衷在于,分担过多的压力,故通过userID段来规定每个业务服务器的处理范围,保证每个业务服务器都在处理能力范围之内,保证用户的正常使用。给每个PES服务器分配userID处理区间段,故当用户达到一定量时可以扩展一个新的PES服务器来处理增加的userID的操作请求,减轻前一个PES服务器的处理压力,进而实现PES服务器的负载均衡。

优选实施过程中,每个客户端从属哪个PES服务器从注册分配userID后就已经确定,除非更换userID登录操作。而分配userID属于哪个PES服务器由网守(PGKS)服务器来决定,故PES的负载均衡源头在网守服务器。一个新用户注册,PGKS服务器会分配一个userID给用户,此时PGKS会根据分配的userID号段归属通知客户端从属哪个PES服务器,实现PES服务器的负载均衡。

优选地,当上述UCS服务器、上述MSGS服务器、或上述DCMS服务器为多个,上述PES服务器20还可以包括:判断模块(图3中未示出),连接于第二接收模块与第二发送模块之间,用于在接收到的需要发送给上述UCS服务器、上述MSGS服务器、或上述DCMS服务器的数据包中,根据查询对象标识queryID判断该数据包所属的UCS服务器、MSGS服务器、或DCMS服务器。

以下结合图5进一步描述上述优选实施方式。

如图5所示,UCS服务器主要交互对象为PES服务器,故负载均衡的设计主要在PES服务器上进行实现。

例如,设计的STRU_CLIENT_PES_FOR_UCS类型包:

上述queryID为实现负载均衡的关键。PES服务器会根据收到的queryID来判断操作对象归属于哪个UCS服务器,进而对应发送数据包,使每个UCS都在处理能力范围能运行。

同理,如图6所示,PES服务器也可以根据收到的queryID来判断操作对象归属于哪个MSGS服务器,进而对该所属的MSGS服务器发送数据包,使每个MSGS服务器在处理能力范围内都可以运行。

同理,如图7所示,PES服务器也可以根据收到的queryID来判断操作对象归属于哪个哪一个DCMS服务器,进而对该所属的DCMS服务器发送数据包,使每个DCMS服务器在处理能力范围内都可以运行。

以下结合图8进一步描述上述优选实施方式。

图8为根据本发明实例的诊疗服务器系统的架构图。如图8所示,该诊疗服务器系统将相关技术的PES服务器业务功能拆分出来,分布成多个独立的业务服务器,且各个服务器(MSGS服务器、UCS服务器、DCMS服务器)之间相互独立,没有耦合,例如MSG服务器和UCS服务器完全没有交互,彼此不会产生影响,PES服务器功能单一,仅负责登录及注册相关,如无修改,用户登录后除非自己下线,否则不会出现掉线的情况,就算业务需求修改其它业务,也不会对登录产生影响,修改的模块只影响自己,不会影响其它业务功能。PES服务器此时作为唯一入口,负责客户端登录后和各个业务服务器的交互,仅仅转发数据包而已,不做其它任何操作。新的业务需求,可以将之集成成一个或多个新的业务服务器,扩展进去,不会对原有产生影响;且拆分后的服务器,如UCS服务器,设计上做了扩展考虑,支持负载均衡,扩展完全没有问题。

图9为根据本发明优选实施例一的诊疗服务器系统的通信方法的流程图。如图9所示,该诊疗服务器系统的通信方法包括:

步骤S901:接入(PES)服务器基于TCP链接接收来自于客户端的第一数据包;

步骤S903:PES服务器根据上述第一数据包中的包类型字节判断上述第一数据包为发送至用户配置及账户管理服务器(UCS)服务器的数据包;

步骤S905:PES服务器根据上述第一数据包中的查询对象标识(queryID)判断该数据包所属的UCS服务器;

步骤S907:PES服务器将上述第一数据包的头部去掉,套上数据后发送至上述所属的UCS服务器。

基于上述诊疗服务器系统的通信方法中,减轻PES的负担,PES此时作为唯一入口,负责客户端登录后和各个业务服务器的交互,仅仅转发数据包而已,不做其它任何操作,提高了服务器的健壮性。PES服务器会根据收到的queryID来判断操作对象归属于哪个UCS,进而对应发送数据包,使每个UCS服务器都在处理能力范围能运行,实现负载均衡。

优选实施过程中,客户端通过TCP链接与PES服务器交互,客户端发送数据包到PES服务器,PES服务器对不用处理的业务包,进行回复,完成交互。

优选实施过程中,客户端通过PES服务器与UCS服务器交互,其中通信数据包的结构如下:

STRU_CLIENT_PES_FOR_UCS类型数据包:

如图10所示,PES收到客户端上行请求,若包类型为DEF_CLIENT_PES_FOR_UCS,则认为该包为客户端发送给UCS服务器的透传包,将包的头部去掉后,套上STRU_PES_COMMON_NESTING_PACKET发送到UCS服务器。包中会有queryID字段信息,便于以后用户量上去后,根据queryID段实现UCS的负载均衡。

优选地,上述诊疗服务器系统的通信方法还可以包括:上述PES服务器接收来自于UCS服务器的第二数据包;上述PES服务器根据上述第二数据包中的包类型字节判断上述第二数据包为发送至客户端的数据包;上述PES服务器根据上述第二数据包的包头中用户标识userID判断客户端的接收端口;上述PES服务器将上述第二数据包的包头去掉,发送至该接受端口。

在优选实施过程中,DEF_UCS_PES_FOR_CLIENT类型包:

如图10所示,PES收到UCS的消息包,若消息类型为DEF_UCS_PES_FOR_CLIENT,则认为该包为UCS服务器发送给客户端的透传包,根据包头中的userID获取端客户端的接收端口,然后去掉包头信息,将包转发至客户端。

STRU_PES_COMMON_NESTING_PACKET类型包:

PES服务器将收到的客户端数据包,去掉消息头之后,根据包序确定是发往UCS服务器的,套上STRU_PES_COMMON_NESTING_PACKET,发给UCS服务器。

图11为根据本发明优选实施例二的诊疗服务器系统的通信方法的流程图。如图11所示,该诊疗服务器系统的通信方法包括:

步骤S1101:接入服务器(PES)基于TCP链接接收来自于客户端的第三数据包;

步骤S1103:PES根据上述第三数据包中的包类型字节判断上述第三数据包为发送至诊疗室管理服务器(DCMS)的数据包;

步骤S1105:PES根据上述第三数据包中的查询对象标识queryID判断该数据包所属的上述DCMS;

步骤S1107:PES将上述第三数据包的头部去掉,套上数据后发送至上述所属的DCMS。

基于上述诊疗服务器系统的通信方法中,减轻PES的负担,PES此时作为唯一入口,负责客户端登录后和各个业务服务器的交互,仅仅转发数据包而已,不做其它任何操作,提高了服务器的健壮性。PES服务器会根据收到的queryID来判断操作对象归属于哪个DCMS服务器,进而对应发送数据包,使每个DCMS服务器都在处理能力范围能运行,实现负载均衡。

优选地,诊疗服务器系统的通信方法还可以包括:上述PES服务器接收来自于DCMS的第四数据包;上述PES服务器根据上述第四数据包中的包类型字节判断上述第四数据包为发送至客户端的数据包;上述PES服务器根据上述第四数据包的包头中用户标识userID判断客户端的接收端口;上述PES服务器将上述第四数据包的包头去掉,发送至该接收端口。

需要说明的是,客户端通过PES与DCMS的交互过程,具体可以参见图10,此处不再赘述。

图12为根据本发明优选实施例三的诊疗服务器系统的通信方法的流程图。如图12所示,该诊疗服务器系统的通信方法包括:

步骤S1201:接入(PES)服务器基于TCP链接接收来自于客户端的第五数据包;

步骤S1203:PES根据上述第五数据包中的包类型字节判断上述第五数据包为发送至用户配置及账户管理服务器消息MSGS的数据包;

步骤S1205:PES根据上述第五数据包中的查询对象标识queryID判断该数据包所属的MSGS服务器;

步骤S1207:PES将上述第五数据包的头部去掉,套上数据后发送至上述所属的MSGS。

基于上述诊疗服务器系统的通信方法中,减轻PES的负担,PES此时作为唯一入口,负责客户端登录后和各个业务服务器的交互,仅仅转发数据包而已,不做其它任何操作,提高了服务器的健壮性。PES服务器会根据收到的queryID来判断操作对象归属于哪个MSGS服务器,进而对应发送数据包,使每个MSGS服务器都在处理能力范围能运行,实现负载均衡。

优选地,上述诊疗服务器系统的通信方法还可以包括:上述PES接收来自于MSGS的第六数据包;上述PES根据上述第六数据包中的包类型字节判断上述第六数据包为发送至客户端的数据包;上述PES根据上述第六数据包的包头中用户标识userID判断客户端的接收端口;上述PES服务器将上述第六数据包的包头去掉,发送至该接收端口。

需要说明的是,客户端通过PES服务器与MSGS服务器的交互过程,具体可以参见图10,此处不再赘述。

综上所述,借助本发明提供的上述实施例,PES只负责登录及注册相关的业务功能,减轻了PES的负担,其它业务根据功能的不同,设计不同的独立服务器来处理,降低了耦合度,提高了服务器的健壮性。此外,PES会根据收到的queryID来判断操作对象归属于哪个UCS服务器、DCMS服务器、或MSGS服务器,进而对应发送数据包,使每个UCS服务器、DCMS服务器、或MSGS服务器都在处理能力范围能运行,实现了业务服务器的负载均衡。

以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1