一种分布式交易请求方法及装置制造方法及图纸

技术编号:10784692 阅读:71 留言:1更新日期:2014-12-17 11:56
本发明专利技术公开一种分布式交易请求方法,包括:接入节点从消息队列中读取待处理的消息,并选择所述消息的计算节点;生成所述消息的会话信息,将所述消息发送给计算结点,将所述会话信息存储至会话存储节点中;计算节点接收到所述消息后处理所述消息,更新所述会话信息,并发送应答信息给所述接入节点;接入节点判断等待应答信息是否超时,若是,则向所述计算节点发送查询请求;若否,则继续等待;计算节点接收到查询请求后,返回会话处理结果;接入节点根据接收到的会话处理结果选择继续等待或将所述消息重新发给新的计算节点处理。本发明专利技术还公开一种分布式交易请求装置。本发明专利技术能够有效提高分布式系统消息处理可靠性。

【技术实现步骤摘要】
一种分布式交易请求方法及装置
本专利技术涉及分布式系统软件设计领域,特别是涉及一种分布式交易请求方法及装置。
技术介绍
分布式系统(distributedsystem)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。在分布式数据库系统中,用户感觉不到数据是分布的,即用户不须知道关系是否分割、有无副本、数据存于哪个站点以及事务在哪个站点上执行等。在一个分布式系统中,一组独立的计算机展现给用户的是一个统一的整体,就好像是一个系统似的。系统拥有多种通用的物理和逻辑资源,可以动态的分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。系统中存在一个以全局的方式管理计算机资源的分布式操作系统。通常,对用户来说,分布式系统只有一个模型或范型。在操作系统之上有一层软件中间件(middleware)负责实现这个模型。在分布式系统中一般会有数据源集群、接入集群和计算集群三个部分,接入集群根据一定策略从数据源集群获取待处理消息,然后根据一定负载均衡算法将消息发给计算集群,并等待处理结果。但现有分布式系统消息交易中存在以下缺点:1、在消息处理过程中,在接入节点或计算节点出现异常情况时会导致消息丢失。2、在消息处理过程中,没有判断消息是否正在处理中,有可能导致消息被重复处理。
技术实现思路
本专利技术所要解决的技术问题是:提供一种分布式交易请求方法,该方法能够有效提高分布式系统消息处理可靠性。为了解决上述技术问题,本专利技术采用的技术方案为:一种分布式交易请求方法,包括步骤:接入节点从消息队列中读取待处理的消息,并根据负载均衡算法选择所述消息的计算节点;接入节点生成所述消息的会话信息,将所述消息发送给计算结点,将所述会话信息存储至会话存储节点中;计算节点接收到所述消息后,按消息的业务要求处理所述消息,计算节点更新所述会话信息,并发送应答信息给所述接入节点;接入节点判断等待应答信息是否超时,若是,则向所述计算节点发送查询请求;若否,则继续等待;计算节点接收到查询请求后,根据所述消息的处理情况返回会话处理结果;接入节点根据接收到的会话处理结果选择继续等待或将所述消息重新发给新的计算节点处理。为了解决上述技术问题,本专利技术提供的另一技术方案为:一种分布式交易请求装置,包括读取单元、接入单元、消息处理单元、第一异常判断单元和异常处理单元;所述读取单元用于通过接入节点从消息队列中读取待处理的消息,并根据负载均衡算法选择所述消息的计算节点;所述接入单元用于通过接入节点生成所述消息的会话信息,将所述消息发送给计算结点,将所述会话信息存储至会话存储节点中;所述消息处理单元用于通过计算节点接收到所述消息后,按消息的业务要求处理所述消息,计算节点更新所述会话信息,并发送应答信息给所述接入节点;所述第一异常判断单元用于通过接入节点判断等待应答信息是否超时,若是,则向所述计算节点发送查询请求;若否,则继续等待;所述异常处理单元用于通过计算节点接收到查询请求后,根据所述消息的处理情况返回会话处理结果;接入节点根据接收到的会话处理结果选择继续等待或将所述消息重新发给新的计算节点处理。本专利技术的有益效果在于:区别于现有技术中,可能出现消息重复处理或丢失等现象,本专利技术通过接入节点判断等待会话信息应答是否超时,当应答超时时,通过查询请求获取消息处理情况,并根据消息处理的实际情况选择继续等待或重新选择计算节点进行处理,从而有效防止因计算节点异常而造成的消息丢失,有效提高分布式系统消息处理可靠性。附图说明图1为本专利技术一实施方式中分布式交易方法的方法流程图;图2为本专利技术一实施方式中分布式交易装置的功能模块图;图3为本专利技术一实例的执行步骤示意图;图4为本专利技术另一实例的执行步骤示意图;主要标号说明:10-读取单元;20-接入单元;30-消息处理单元;40-第一异常判断单元;50-异常处理单元。具体实施方式为详细说明本专利技术的
技术实现思路
、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。本专利技术最关键的构思在于:通过超时判断计算节点是否异常,当节点异常时重新选择计算节点,从而防止消息丢失,提高系统处理稳定性。请参阅图1,一种分布式交易请求方法,包括步骤:接入节点从消息队列中读取待处理的消息,并根据负载均衡算法选择所述消息的计算节点;接入节点生成所述消息的会话信息,将所述消息发送给计算结点,将所述会话信息存储至会话存储节点中;计算节点接收到所述消息后,按消息的业务要求处理所述消息,计算节点更新所述会话信息,并发送应答信息给所述接入节点;接入节点判断等待应答信息是否超时,若是,则向所述计算节点发送查询请求;若否,则继续等待;计算节点接收到查询请求后,根据所述消息的处理情况返回会话处理结果;接入节点根据接收到的会话处理结果选择继续等待或将所述消息重新发给新的计算节点处理。本在实施方式中,所述会话信息内容包括会话标识,待处理消息,选择的计算节点,会话状态。当对所述消息进行处理时(分配给哪个计算节点、计算节点处理消息等),都会相应的更新会话信息中的内容。根据会话信息中的会话标识可以判断消息是否正在处理中,防止消息被重复处理。从上述描述可知,本专利技术的有益效果在于:本专利技术通过接入节点判断等待会话信息应答是否超时,当应答超时,则计算节点异常,通过向计算节点发送查询请求获取消息处理情况,并根据消息处理的实际情况选择继续等待或重新选择计算节点进行处理,从而有效防止因计算节点异常而造成的消息丢失,有效提高分布式系统消息处理可靠性。进一步的,在本实施方式中,当所述接入节点接收到的会话处理结果为:消息正在处理时,接入节点选择继续等待;当所述接入节点接收到的会话处理结果为:计算节点状态异常或消息未收到时,接入节点选择将所述消息重新发给新的计算节点处理。所述“将所述消息重新发给新的计算节点处理”包括步骤:接入节点根据负载均衡算法重新选择一计算节点;接入节点更新会话信息,将所述消息发送给新的计算节点;计算节点接收到所述消息后,按消息的业务要求处理所述消息,并更新所述会话信息。当所述计算节点处理完所接收到的消息后还包括步骤:计算节点返回该消息的消息处理结果给接入节点;接入节点收到所述消息处理结果后,从消息队列中删除所述消息并提交;接入节点删除该消息的会话信息。进一步的,在上述实施方式中,当所述接入节点等待应答信息时,还包括判断该节点是否出现异常;当所述接入节点出现异常时,执行以下步骤:所述计算节点更新会话信息,并将所述消息回退至消息队列中;当所述消息再次被另一接入节点读取到时,接入节点查询所述消息的会话信息,并根据会话信息的内容将所述消息发送给原先处理该消息的计算节点进行处理;所述计算节点根据所述消息的业务要求处理所接收到的消息,更新会话信息,并向所述接入节点返回消息处理结果。本实施方式监测接入节点是否正常,当某接入节点出现异常时,将该异常接入节点所接入到计算节点中的消息回退到消息队列中,新的接入节点将该消息重新发送给之前处理该消息的计算节点进行处理,从而能有效防止该消息丢失。本专利技术的另一实施方式为:请参阅图2,一种本文档来自技高网
...
一种分布式交易请求方法及装置

【技术保护点】
一种分布式交易请求方法,其特征在于,包括步骤:接入节点从消息队列中读取待处理的消息,并根据负载均衡算法选择所述消息的计算节点;接入节点生成所述消息的会话信息,将所述消息发送给计算结点,将所述会话信息存储至会话存储节点中;计算节点接收到所述消息后,按消息的业务要求处理所述消息,计算节点更新所述会话信息,并发送应答信息给所述接入节点;接入节点判断等待应答信息是否超时,若是,则向所述计算节点发送查询请求;若否,则继续等待;计算节点接收到查询请求后,根据所述消息的处理情况返回会话处理结果;接入节点根据接收到的会话处理结果选择继续等待或将所述消息重新发给新的计算节点处理。

【技术特征摘要】
1.一种分布式交易请求方法,其特征在于,包括步骤:接入节点从消息队列中读取待处理的消息,并根据负载均衡算法选择所述消息的计算节点;接入节点生成所述消息的会话信息,将所述消息发送给计算结点,将所述会话信息存储至会话存储节点中;计算节点接收到所述消息后,按消息的业务要求处理所述消息,计算节点更新所述会话信息,并发送应答信息给所述接入节点;接入节点判断等待应答信息是否超时,若是,则向所述计算节点发送查询请求;若否,则继续等待;计算节点接收到查询请求后,根据所述消息的处理情况返回会话处理结果;接入节点根据接收到的会话处理结果选择继续等待或将所述消息重新发给新的计算节点处理;当所述接入节点等待应答信息时,还包括判断该节点是否出现异常;当所述接入节点出现异常时,执行以下步骤:所述计算节点更新会话信息,并将所述消息回退至消息队列中;当所述消息再次被另一接入节点读取到时,接入节点查询所述消息的会话信息,并根据会话信息的内容将所述消息发送给原先处理该消息的计算节点进行处理;所述计算节点根据所述消息的业务要求处理所接收到的消息,更新会话信息,并向所述接入节点返回消息处理结果。2.根据权利要求1所述的分布式交易请求方法,其特征在于,当所述接入节点接收到的会话处理结果为:消息正在处理时,接入节点选择继续等待;当所述接入节点接收到的会话处理结果为:计算节点状态异常或消息未收到时,接入节点选择将所述消息重新发给新的计算节点处理。3.根据权利要求2所述的分布式交易请求方法,其特征在于,所述“将所述消息重新发给新的计算节点处理”包括步骤:接入节点根据负载均衡算法重新选择一计算节点;接入节点更新会话信息,将所述消息发送给新的计算节点;计算节点接收到所述消息后,按消息的业务要求处理所述消息,并更新所述会话信息。4.根据权利要求1至3任意一项所述的分布式交易请求方法,其特征在于,当所述计算节点处理完所接收到的消息后还包括步骤:计算节点返回该消息的消息处理结果给接入节点;接入节点收到所述消息处理结果后,从消息队列中删除所述消息并提交;接入节点删除该消息的会话信息。5.一种分布式交易请求装置,其特征在于,包括读取单元、接入单元、消息处理单元、第一异常判断单元、异常处理单元和第二异常判断单元;所述读取单元用于通过接入节点从消息队列中读取待...

【专利技术属性】
技术研发人员:陈立峰周志武林俊德林整榕林晋发汪秀清张建新陈东陈兆昌蔡云鹏林成龙林诚汉李伟
申请(专利权)人:福建新大陆软件工程有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有1条评论
  • 来自[美国加利福尼亚州圣克拉拉县山景市谷歌公司] 2015年01月14日 01:48
    什么是分布式计算?所谓分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术是将数据分散的存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。
    0
1