一种高效可靠的多任务处理方法及系统技术方案

技术编号:9865225 阅读:117 留言:0更新日期:2014-04-02 22:19
本发明专利技术公开了一种高效可靠的多任务处理方法及系统,属于计算机网络技术领域。本发明专利技术将整个系统分为两个端点:一个端点称为生产端,即客户端将请求发送到WEB服务器,WEB服务器将请求封装成消息发送到消息服务器上。然后将消息发送成功的结果返回。另一个端点是消费端,即业务逻辑处理单元从消息服务器上取得消息,并解析消息成相关的请求,然后对其进行处理,处理完成以后发送消费完成的确认消息给消息服务器,消息服务器将此条消息从服务器中删除。本发明专利技术节省了WEB服务器的系统资源,降低了系统的耦合性,提高了扩展性;同时提升了用户体验,保持用户操作了连续性。

【技术实现步骤摘要】
一种高效可靠的多任务处理方法及系统
本专利技术涉及一种高效可靠的多任务处理方法及系统,属于计算机网络

技术介绍
在当前的WEB系统中,绝大多数是基于HTTP的请求和响应的B/S架构的,整个过程如下:客户端(浏览器)发送请求到WEB服务器,服务器端接收请求并进行业务逻辑的处理,最后将处理后得到的结果返回到客户端。现有技术在服务器端业务逻辑复杂,处理比较耗时的情况下会出现如下问题:对于服务器端某些时性要求并不高,但业务逻辑非常复杂,处理耗时非常大,客户端的往往响应的时间比较长,甚至会导致客户端迟迟无法得到响应,严重影响用户体验,同时,长时间未返回会造成session失效,极大的影响了用户操作的连续性。
技术实现思路
针对现有技术中存在的技术问题,本专利技术的目的在于提供一种高效可靠的多任务处理方法及系统;本专利技术将服务器端接收客户端的请求和服务器端对请求进行业务逻辑的处理进行物理上的分离,将请求封装成消息发送到消息服务器上,业务逻辑处理单元从消息服务器获取消息并解析成请求之后进行业务逻辑的处理。本专利技术将整个系统分为两个端点:一个端点称为生产端,即客户端将请求发送到WEB服务器,WEB服务器将请求封装成消息发送到消息服务器上。然后将消息发送成功的结果返回。另一个端点是消费端,即业务逻辑处理单元从消息服务器上取得消息,并解析消息成相关的请求,然后对其进行处理,处理完成以后发送消费完成的确认消息给消息服务器,消息服务器将此条消息从服务器中删除。本专利技术的技术方案为:一种高效可靠的多任务处理方法,其步骤为:DffEB服务器解析客户端请求,获取客户端请求的参数;2)WEB服务器将客户端请求封装成消息发送到消息服务器集群的主消息服务器上;其中,WEB服务器将客户端请求参数中业务逻辑处理的请求参数组装成字节流作为所封装消息的内容;3)主消息服务器接收消息并将其进行持久化到一共享数据库,然后再将消息发送到相应的业务逻辑处理单元;4)业务逻辑处理单元将收到的消息解析成客户端请求后对其进行处理,并发送反馈信息给主消息服务器;5)如果业务逻辑处理单元执行成功,则主消息服务器将持久化到该共享数据库中的该消息删除。进一步的,在于WEB服务器监听消息服务器集群中各个消息服务器的连接情况,确定可达的所述主消息服务器。进一步的,WEB服务器根据设定的发送频率将所封装消息发送到所述主消息服务器。进一步的,所述消息服务器集群包括若干台消息服务器,在同一时间内,将其中一台消息服务器设为主消息服务器,提供服务,其余消息服务器设为辅消息服务器,并形成辅消息服务器队列;如果当前主消息服务器无法提供服务,则将辅消息服务器队列中最靠前的一台可达的辅消息服务器设为主消息服务器;如果原主消息服务器恢复正常,则将原主消息服务器列入辅消息服务器队列的末尾处。进一步的,所述主消息服务器持久化消息到所述共享数据库的方法为:按照消息内容中的业务逻辑以队列的方式存储消息,不同业务逻辑处理单元对应不同的队列。进一步的,所述业务逻辑处理单元根据设定的频率接收主消息服务器发送来的消息;所述消息为二进制字节流消息。—种高效可靠的多任务处理系统,其特征在于包括一 WEB服务器、一消息服务器集群、以业务处理系统;其中,业务处理系统包括若干业务逻辑处理单元,WEB服务器通过网络与客户端连接,消息服务器集群通过网络分别与WEB服务器、业务处理系统连接;所述WEB服务器用于接收客户端的请求,并对客户端请求进行解析后封装为消息发送给消息服务器集群;接收消息服务器集群返回的反馈消息,将其反馈给客户端;所述消息服务器集群用于接收WEB服务器封装后的消息并将其进行持久化到一共享数据库,然后再将消息发送到相应的业务处理系统;所述业务处理系统用于将收到的消息解析成客户端请求后对其进行处理,并发送反馈信息给消息服务器集群。进一步的,所述消息服务器集群按照消息内容中的业务逻辑以队列的方式将消息持久化到所述共享数据库,不同的队列对应所述业务系统中不同业务逻辑处理单元。进一步的,所述消息服务器集群如果收到业务处理系统反馈消息为执行成功,则消息服务器集群将删除持久化到所述共享数据库中的该消息。进一步的,所述WEB服务器对客户端的请求采用异步处理方式进行处理;所述业务处理系统采用多线程处理方式处理客户端请求。与现有技术相比,本专利技术产生的技术效果:1、将客户端的请求进行异步处理,有效的提升了用户体验,保持用户操作了连续性。2、复杂的业务逻辑的处理从WEB服务器当中分离出来,Web服务器只负责请求的解析、信息封装和收发,节省了 WEB服务器的系统资源。3、将复杂的业务逻辑独立出来,便于采用多线程等提升性能的手段,降低了系统的耦合性,提高了扩展性。【附图说明】图1为本专利技术的系统结构图;图2为WEB服务器工作流程图;图3为消息服务器工作流程图;图4为业务逻辑处理单元工作流程图。【具体实施方式】本专利技术主要有三个部分组成:WEB服务器、消息服务器集群、业务处理系统(包括若干业务逻辑处理单元);消息服务器集群中包括一消息服务器共享的持久化消息数据库,主要作用是防止消息丢失,保障业务逻辑中所处理的消息能够顺序的进行处理。F5是负载均衡的硬件设备。如图1所示。WEB服务器主要功能是接受并解析HTTP请求,然后将请求封装成消息格式并发送到消息服务器上。所以WEB服务器这端主要由3部分组成:HTTP请求解析模块,消息封装模块和消息发送模块,如图2所示。HTTP请求解析模块:主要是解析HTTP请求,获取请求的参数。消息封装模块:将解析模块获取的请求参数中业务逻辑处理的请求参数组装成字节流作为消息的内容。消息服务器监听模块:监听集群中各个消息服务器的连接情况。消息发送模块:根据指定的发送频率将字节流消息发送到消息服务器监听模块所确定的可达的消息服务器。消息服务器集群主要由若干台消息服务器组成,在同一时间内,只有一台消息服务器提供服务,称为主消息服务器,其余的都是辅消息服务器,并形成辅消息服务器队列。如果主消息服务器因故障无法提供服务,比如路由不可达,则由辅消息服务器队列中的最靠前的一台可达的辅消息服务器接管服务,变为主消息服务器。如果原来的主消息服务器恢复正常,则原主消息服务器进入辅消息服务器队列的末尾处。主消息服务器的主要功能是接收消息并将其进行持久化到数据库,即按顺序存放在持久化数据库中,所有消息服务器集群都共享该数据库,然后再将消息发送到相应的业务逻辑处理单元并接收其反馈信息,如果业务处理单元执行成功,则将保存在数据库中的持久化消息进行删除。消息服务器主要有以下几个模块组成:消息接收模块,消息识别模块,消息发送模块,消息持久化管理模块,持久化消息数据库。如图3所示。消息接收模块:主要是接收WEB服务发送来的封装过的请求消息和业务逻辑处理单元发送过来的反馈信息。消息识别模块:对接收到的消息来源,发送目的,消息队列的工D,消息类型进行识别,并将结果发送到持久化消息管理模块。持久化消息管理模块:对持久化消息DB进行增删的操作。持久化消息将按照消息内容中的业务逻辑以队列的方式存储消息,不同业务逻辑处理单元对应不同的队列。持久化消息DB:保存所有未被业务逻辑处理单元消费的消息。消息发送模块:将不同队列里的消息发送各本文档来自技高网...

【技术保护点】
一种高效可靠的多任务处理方法,其步骤为:1)WEB服务器解析客户端请求,获取客户端请求的参数;2)WEB服务器将客户端请求封装成消息发送到消息服务器集群的主消息服务器上;其中,WEB服务器将客户端请求参数中业务逻辑处理的请求参数组装成字节流作为所封装消息的内容;3)主消息服务器接收消息并将其进行持久化到消息服务器集群的共享数据库,然后再将消息发送到相应的业务逻辑处理单元;4)业务逻辑处理单元将收到的消息解析成客户端请求后对其进行处理,并发送反馈信息给主消息服务器;5)如果业务逻辑处理单元执行成功,则主消息服务器将持久化到该共享数据库中的该消息删除。

【技术特征摘要】
1.一种高效可靠的多任务处理方法,其步骤为: DffEB服务器解析客户端请求,获取客户端请求的参数; 2)WEB服务器将客户端请求封装成消息发送到消息服务器集群的主消息服务器上;其中,WEB服务器将客户端请求参数中业务逻辑处理的请求参数组装成字节流作为所封装消息的内容; 3)主消息服务器接收消息并将其进行持久化到消息服务器集群的共享数据库,然后再将消息发送到相应的业务逻辑处理单元; 4)业务逻辑处理单元将收到的消息解析成客户端请求后对其进行处理,并发送反馈信息给主消息服务器; 5)如果业务逻辑处理单元执行成功,则主消息服务器将持久化到该共享数据库中的该消息删除。2.如权利要求1所述的方法,其特征在于WEB服务器监听消息服务器集群中各个消息服务器的连接情况,确定可达的所述主消息服务器。3.如权利要求1或2所述的方法,其特征在于WEB服务器根据设定的发送频率将所封装消息发送到所述主消息服务器。4.如权利要求1或2所述的方法,其特征在于所述消息服务器集群包括若干台消息服务器,在同一时间内,将其中一台消息服务器设为主消息服务器,提供服务,其余消息服务器设为辅消息服务器,并形成辅消息服务器队列;如果当前主消息服务器无法提供服务,则将辅消息服务器队列中最靠前的一台可达的`辅消息服务器设为主消息服务器;如果原主消息服务器恢复正常,则将原主消息服务器列入辅消息服务器队列的末尾处。5.如权利要求1所述的方法,其特征在于所述主消息服务器持久化消息到所述共享数据库的方法为:按照消息内容中的业务逻辑以队列...

【专利技术属性】
技术研发人员:欧阳万斌常安宁
申请(专利权)人:中国科学院计算机网络信息中心
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1