业务请求处理方法、相关装置及系统与流程

文档序号:11843142阅读:134来源:国知局
业务请求处理方法、相关装置及系统与流程

本发明涉及通信技术领域,具体而言涉及一种业务请求处理方法、相关装置及消息处理系统。



背景技术:

电信业务,例如呼叫业务、计费业务对可靠性要求极高,对应的,处理电信业务的电信设备的可靠性要求也较高。现有的电信设备采用集群化部署,集群化部署后得到多个电信设备节点,其中包括冗余节点和生产节点,通过冗余节点来保障生产节点的高可靠性。这些电信设备节点对性能指标的要求比较高,响应时间通常是毫秒级,每个节点每秒可以接收上千个业务请求。

对于集群化部署的方案,处理会话的应用节点和储存数据的数据节点分开部署在不同的设备上。应用节点会接收到负载均衡器发来的业务请求,应用节点根据该业务请求与数据节点进行交互,并返回业务应答消息给负载均衡器。当应用节点接收到多个业务请求时,其将业务请求加入到会话队列中,按照先后顺序来处理队列中的业务请求。

但是,现有技术提供的集群化部署的方案如果数据节点出现故障,例如部分业务请求对应的数据在数据节点上不可用,将会导致应用节点在处理该部分业务请求时发生超时,从而继续占用该会话队列。随着越来越多的业务请求进入应用节点,导致应用节点的会话队列的可用部分越来越少,从而会话队列发生堵塞,无法及时处理其他正常的数据节点上的业务请求,导致业务请求的处理效率降低。



技术实现要素:

本发明实施例提供了一种避免应用节点上的会话队列发生堵塞的 业务请求处理方法、装置及消息处理系统。

第一方面,本发明实施例提供一种负载均衡器上的业务请求处理方法,包括:

接收网元上报的业务请求,获取所述业务请求对应的数据节点的状态信息;

在所述数据节点的状态信息为不可用时,拒绝向应用节点分发所述业务请求,或者缓存所述业务请求,在所述数据节点的状态信息变为可用时,向应用节点分发缓存的所述业务请求。

结合第一方面,在第一种可能的实现方式中,所述获取业务请求对应的数据节点的状态信息包括:

获取所述业务请求中携带的用户标识所在的号码段对应的数据节点的标识;

获取所述数据节点标识对应的数据节点的当前状态信息。

第二方面,本发明实施例提供一种应用节点上的消息处理装置,其包括:

接收负载均衡器发送的业务请求;

根据所述业务请求向数据节点请求数据访问,在访问失败时获取所述业务请求对应的会话的服务等级协议SLA信息;

根据所述SLA信息获取所述数据节点的状态信息;

向所述负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

结合第二方面,在第一种可能的实现方式中,所述获取业务请求对应的会话的服务等级协议SLA信息包括:

获取所述业务请求对应的会话进行处理的起始时间和结束时间;

根据所述起始时间和结束时间确定所述会话的时延,所述SLA信息中包括时延。

结合第二方面、第二方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括在所述数据节点的状态信息发生更新后,向负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点更新 的状态信息。

第三方面,本发明实施例还提供一种负载均衡器,其包括:

第一接收单元,用于接收网元上报的业务请求,获取所述业务请求对应的数据节点的状态信息;

第一处理单元,用于在所述数据节点的状态信息为不可用时,拒绝向应用节点分发所述业务请求,或者缓存所述业务请求,在所述数据节点的状态信息变为可用时,向应用节点分发缓存的所述业务请求。

结合第三方面,在第一种可能的实现方式中,所述第一接收单元获取业务请求对应的数据节点的状态信息包括:

获取所述业务请求中携带的用户标识所在的号码段对应的数据节点的标识;

获取所述数据节点标识对应的数据节点的当前状态信息。

第四方面,本发明实施例提供一种应用节点,其包括:

第二接收单元,用于接收负载均衡器发送的业务请求;

会话信息获取单元,用于根据所述业务请求向数据节点请求数据访问,在访问失败时获取所述业务请求对应的会话的服务等级协议SLA信息;

状态获取单元,用于根据所述SLA信息获取所述数据节点的状态信息;

响应发送单元,用于向所述负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

结合第四方面,在第一种可能的实现方式中,所述会话信息获取单元获取所述业务请求对应的会话的服务等级协议SLA信息具体包括:

所述会话信息获取单元获取所述业务请求对应的会话进行处理的起始时间和结束时间;根据所述起始时间和结束时间确定所述会话的时延,所述SLA信息中包括时延。

第五方面,本发明实施例提供一种业务请求处理系统,其包括如第三方面所述的负载均衡器和第四方面所述的应用节点。

在本发明实施例提供的业务请求处理方法中,在负载均衡器接收到 网元上报的业务请求后,首先判断业务请求对应的数据节点的状态信息是否为可用,并在状态信息为不可用的情况下拒绝向应用节点分发该业务请求。本发明实施例还可以缓存接收到的业务请求,在数据节点的状态信息变为可用时,再向应用节点分发缓存的业务请求,避免了现有技术在数据节点的状态为不可用的情况下向应用节点分发业务请求,从而造成大量的业务请求堵塞在应用节点的会话队列的情况发生,相对于现有技术,本发明实施例可以及时对其他正常的数据节点上的业务请求进行处理,整体上提高了业务请求的处理效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:

图1是本发明实施例提供的业务请求处理系统的整体架构图;

图2是本发明实施例一提供的业务请求处理方法的流程图;

图3是本发明实施例二提供的业务请求处理方法的流程图;

图4是本发明实施例三提供的业务请求处理方法的流程图;

图5是本发明实施例四提供的负载均衡器的功能模块图;

图6是本发明实施例五提供的应用节点的功能模块图;

图7是本发明实施例六提供的评估中心的功能模块图;

图8是本发明实施例七提供的消息处理系统的功能模块图;

图9是本发明实施例八提供的负载均衡器的结构示意图;

图10是本发明实施例九提供的应用节点的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本 发明保护的范围。

本发明提供一种业务请求处理方法、装置及消息处理系统,参见图1,图1是本发明实施例提供的业务请求处理系统的整体架构图。

如图所示,业务请求处理系统主要包括负载均衡器adapter、应用节点池APP Pool、数据节点池MDB Pool(图中包括MDB1、MDB2和MDBn)和评估中心。其中,负载均衡器独立于应用节点设置,电信应用(例如呼叫处理应用、计费应用)采用集群化方式部署在应用节点池中,应用节点池中包括多个应用节点,多个应用节点为对等集群,每个应用节点均可处理任何业务和任何客户。数据节点采用内存数据库(Memory DataBase,MDB)技术构建或承载,数据节点池中包括多个数据节点,一数据节点上存储某个客户段的数据,例如存储标识为13000000000-13000009999客户的账户余额或资费套餐等。在本实施例中,评估中心单独设置。作为另一实施方式,评估中心还可以和应用节点合设,即每个应用节点包含一个评估中心。此外,评估中心还可以与数据节点合设,即每个数据节点包含一个评估中心。

其中,在电信业务运营时,业务请求处理系统外部的网元向负载均衡器发出业务请求,例如呼叫业务请求、彩信业务请求、数据业务请求和计费请求。本发明实施例提供的负载均衡器上的业务请求处理方法如图2所示,主要包括:

步骤201、负载均衡器接收网元上报的业务请求,获取所述业务请求对应的数据节点的状态信息。

本发明实施例中,负载均衡器上存储有数据节点池中的数据节点的状态信息,负载均衡器获取所述业务请求中用户的标识(例如:主叫号码或被叫号码)所在的号码段对应的数据节点的状态信息,然后判断该状态信息是否为可用。其中,状态信息包括可用或不可用,状态信息可用表示数据节点上的数据可以访问,反之表示数据节点上的数据不可访问,即数据节点故障。

具体的,负载均衡器上保存了数据节点的标识和数据节点的状态信息之间的对应关系。其中,数据节点的状态信息初始值为可用,即数据 节点的状态初始默认为可用。负载均衡器可以获取接收到的业务请求中的用户标识对应的数据节点的标识,该数据节点上存储了该用户标识对应的用户数据,然后根据所述标识查找所述数据节点当前的状态信息,根据所述状态信息判断所述数据节点是否可用。其中,同一用户的不同业务请求对应相同的数据节点,访问相同的用户信息。

步骤202、负载均衡器在数据节点的状态信息为不可用时,拒绝向应用节点分发所述业务请求,或缓存所述业务请求,在所述数据节点的状态信息变为可用时,向应用节点分发缓存的所述业务请求。

在本实施例中,负载均衡器在判断该用户数据所在数据节点的状态信息为不可用时,拒绝向应用节点分发该业务请求。其中,负载均衡器可以直接删除该业务请求或等待该业务请求超时后自动放弃该业务请求。

可选的,负载均衡器还可以在确定上述数据节点的状态信息为不可用时,先缓存所述业务请求,在所述数据节点的状态信息由不可用变为可用时,根据负载均衡策略向应用节点分发缓存的所述业务请求。

其中,上述数据节点的状态信息由不可用变为可用可以由人工配置到负载均衡器,或者由应用节点或数据节点通知到负载均衡器。

步骤203、负载均衡器在所述数据节点的状态信息为可用时,向应用节点分发所述业务请求。

具体的,若负载均衡器在步骤201中获取数据节点的状态信息后,判断该用户数据所在的数据节点的状态信息为可用,即数据节点处于正常时,向应用节点分发该业务请求,以便于应用节点正常处理该业务请求。

在本实施例中,处理业务请求的应用节点兼具评估中心的功能,或者应用节点上设置有评估中心,若应用节点在处理负载均衡器分发的业务请求时,数据节点的状态信息由可用变为不可用,即发生故障,应用节点无法访问该数据节点,此时应用节点将对该数据节点的状态进行评估,并返回携带数据节点的状态信息的评估响应信息。具体的,应用节点或评估中心可以采用直径信用控制(Diameter Credit Control,DCC) 消息来发送数据节点的状态信息。

步骤204、负载均衡器接收所述应用节点返回的评估响应消息,所述评估响应消息中携带所述数据节点的状态信息,根据接收到的状态信息更新所述数据节点的状态信息。

具体的,负载均衡器接收所述应用节点返回的评估响应消息,该评估响应消息中携带数据节点的状态信息以及该数据节点的标识。负载均衡器还根据接收到的状态信息更新所保存的数据节点的状态信息,便于后续接收到业务请求后,能查询到数据节点的最新的状态消息,并根据最新的状态信息对业务请求进行处理。

在本发明实施例提供的业务请求处理方法中,在负载均衡器接收到网元上报的业务请求后,首先判断业务请求对应的数据节点的状态信息是否为可用,并在状态信息为不可用的情况下拒绝向应用节点分发该业务请求。本发明实施例还可以缓存接收到的业务请求,在数据节点的状态信息变为可用时,再向应用节点分发缓存的业务请求,避免了现有技术在数据节点的状态为不可用的情况下向应用节点分发业务请求,从而造成大量的业务请求堵塞在应用节点的会话队列的情况发生,相对于现有技术,本发明实施例可以使得应用节点及时对其他正常的数据节点上的业务请求进行处理,整体上提高了业务请求的处理效率。

参见图3,图3是本发明实施例二提供的应用节点上的业务请求处理方法的流程图。

如图所示,本实施例提供的业务请求处理方法主要包括:

步骤301、应用节点接收负载均衡器发送的业务请求。

具体的,应用节点接收负载均衡器发送的业务请求,该业务请求来自于业务请求处理系统外部的网元,例如外部的计费系统、呼叫处理中心或短消息业务中心等。业务请求可以为呼叫业务请求、彩信业务请求、数据业务请求或计费请求等。

步骤302、应用节点根据所述业务请求向数据节点请求数据访问,在访问失败时获取所述业务请求对应的会话的服务等级协议SLA信息 和所述数据节点的标识。

具体的,应用节点向用户标识所在的号码段对应的数据节点请求数据访问,例如应用节点根据呼叫请求中的主叫号码所在的号码段向对应的数据节点请求该主叫号码的资费信息。其中,应用节点在接收到业务请求后,在本地建立一个会话来处理该业务请求。

在本实施例中,应用节点在访问数据节点失败时,例如数据节点无法返回应用节点请求的数据,则应用节点获取该业务请求对应的会话的服务等级协议(Service Level Agreement,SLA)信息和该数据节点的标识。其中,SLA信息可以为会话时延、出错率等参数。具体的,应用节点可以获取该业务请求对应的会话进行处理的起始时间和结束时间,根据所述起始时间和结束时间确定所述会话的时延。若会话由于数据节点故障导致处理超时,此时不存在会话的结束时间,则应用节点可以获取该业务请求对应的会话进行处理的起始时间和超时时间,根据所述起始时间和超时时间确定所述会话的时延。

步骤303、应用节点根据所述SLA信息和所述业务的故障阈值评估所述数据节点的状态信息。

在本实施例中,应用节点根据所述SLA信息获取所述数据节点的状态信息具体为:应用节点根据所述SLA信息和所述业务的故障阈值评估所述数据节点的状态信息。此时,应用节点兼设有评估中心的功能。

其中,应用节点上可以预设业务的故障阈值,所述故障阈值用于与SLA信息相比较,以确定数据节点的状态是否为可用。该故障阈值与不同的业务对应,例如数据业务和语音呼叫业务对应不同的故障阈值,语音业务的故障阈值为时延超过300ms,数据业务的故障阈值为时延超过500ms等。应用节点根据上述会话的时延信息和对应的故障阈值评估所述数据节点的状态信息,在时延不超过业务的故障阈值时,将数据节点的状态信息确定为可用,在时延超过业务的故障阈值时,将数据节点的状态信息确定为不可用。“超过”在本文是指大于。

步骤304、应用节点向所述负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

在本实施例中,应用节点在评估获得数据节点的状态信息后,可以向负载均衡器发送携带数据节点的状态信息和数据节点的标识的评估响应消息,以通知负载均衡器更新数据节点的状态信息。具体的,应用节点可以采用直径信用控制(Diameter Credit Control,DCC)消息来发送数据节点的状态信息。

在本发明实施例中,由于应用节点池中存在多个应用节点,这些应用节点之间对同一数据节点的状态信息的评估结果可能不同,这些不同的评估结果反馈到负载均衡器之后,负载均衡器可以根据接收到的评估响应消息的时间先后顺序来更新本地保存的该数据节点的状态信息。作为另一种实现方式,负载均衡器也可以在接收到第一个状态信息为不可用的评估响应消息后,将该数据节点的状态信息确定为不可用,后续接收到针对该数据节点的且状态信息为可用的评估响应消息后,不再更新该数据节点的状态信息,直到接收到数据节点发送的状态信息为可用后再更新数据节点的状态信息。

在本发明实施例提供的业务请求处理方法中,应用节点在确定数据节点不可访问时,获取业务请求对应的会话的SLA信息,然后进一步根据SLA信息和预设的故障阈值判断该数据节点的状态是否为可用,并通知负载均衡器该数据节点的状态信息,以便于负载均衡器后续在接收到该数据节点对应的业务请求后,拒绝向应用节点分发该业务请求。与现有技术应用节点只负责处理业务请求相比,本实施例避免了现有技术在数据节点的状态为不可用的情况下向应用节点分发业务请求,从而造成大量的业务请求堵塞在应用节点的会话队列的情况发生。本发明实施例可以及时对其他正常的数据节点上的业务请求进行处理,整体上提高了业务请求的处理效率。

可选的,为进一步提高确定数据节点的状态信息的准确性,上述步骤303中的应用节点根据SLA信息和所述业务的故障阈值评估所述数据节点的状态信息包括:

检测业务请求对应的会话的SLA信息是否超过该业务的故障阈值,统计预设时间内SLA信息超出故障阈值的情况发生的次数。在本实施例 中应用节点持续统计预设时间内的SLA信息超过业务故障阈值的业务请求的数量;

在所述预设时间内SLA信息超过故障阈值的业务请求的数量大于第一阈值时,将所述数据节点的状态信息确定为不可用;

在所述预设时间内SLA信息超过故障阈值的业务请求的数量小于或等于第一阈值时,将所述数据节点的状态信息确定为可用。

具体的,针对语音业务,该预设时间可以为1分钟,第一阈值可以为10,若1分钟内时延超过300ms的业务请求的数量大于第一阈值10,则确定数据节点的状态信息为不可用,若1分钟内时延超过300ms的业务请求的数量小于或等于第一阈值10,则确定数据节点的状态信息为可用;针对数据业务,该预设时间可以为1分钟,第一阈值可以为20,对应的,若1分钟内时延超过500ms的语音业务请求的数量大于20,则确定数据节点的状态信息为不可用,若1分钟内时延超过500ms的语音业务请求的数量小于或等于20,则确定数据节点的状态信息为可用。

相对于仅仅判断时延是否超过故障阈值来确定数据节点的状态信息的方式,本实施例结合故障阈值和第一阈值来确定数据节点的状态信息,可以提高确定数据节点的状态信息的准确性。

参见图4,图4是本发明实施例三提供的评估中心上的业务请求处理方法的流程图。

在本发明实施例中,评估中心独立于应用节点设置,多个应用节点可以共用一个全局的评估中心。本发明实施例交互的设备包括业务请求处理系统外部的网元、负载均衡器、应用节点、数据节点和评估中心。其中,网元会上报业务请求到负载均衡器,业务请求可以包括呼叫业务请求、彩信业务请求、数据业务请求和计费请求。

本发明实施例提供的业务请求处理方法主要包括如下步骤:

步骤401、负载均衡器接收网元上报的业务请求,获取所述业务请求对应的数据节点的状态信息。

其中,负载均衡器对接收到的业务请求进行解码,获得业务请求中 携带的用户号码,然后找到该用户号码所在的号码段对应的数据节点的标识,进一步根据本地保存的数据节点的标识和数据节点的状态信息之间的对应关系,查找该数据节点的状态信息。例如,接收到的业务请求为呼叫业务请求,则负载均衡器对呼叫业务请求进行解码,获得业务请求中携带的主叫号码,然后找到该主叫号码所在的号码段对应的数据节点的标识。

步骤402、负载均衡器根据数据节点的状态信息分发业务请求到应用节点。

在本实施例中,该数据节点的状态信息为可用,则负载均衡器分发该业务请求到应用节点。若该数据节点的状态信息为不可用,则负载均衡器拒绝向应用节点分发该业务请求,避免该业务请求堵塞应用节点。

步骤403、应用节点根据所述业务请求向数据节点请求数据访问,在访问失败时获取所述业务请求对应的会话的服务等级协议SLA信息和所述数据节点的标识。

其中,应用节点执行步骤403的具体过程和上述实施例三中的步骤302相同,详情参见上述实施例三的描述。

步骤404、应用节点向评估中心上报所述数据节点的标识和所述会话的服务等级协议SLA信息。

在本实施例中,应用节点根据所述SLA信息获取所述数据节点的状态信息具体为:应用节点向评估中心上报所述数据节点的标识和所述会话的服务等级协议SLA信息,由评估中心来评估该数据节点的状态信息。

步骤405、评估中心根据接收到的所述SLA信息和所述业务的故障阈值评估所述数据节点的状态信息。

其中,评估中心上可以预设业务的故障阈值,故障阈值用于与SLA信息相比较,以确定数据节点的状态是否为可用,该故障阈值与不同的业务对应,例如数据业务和语音呼叫业务对应不同的故障阈值,语音业务的故障阈值为时延超过200ms,数据业务的故障阈值为时延超过500ms等。评估中心根据接收到的SLA信息,例如时延,和对应的故障 阈值评估所述数据节点的状态信息,在时延不超过业务的故障阈值时,将数据节点的状态信息确定为可用,在时延超过业务的故障阈值时,将数据节点的状态信息确定为不可用。

需要说明的是,评估中心可以接收到多个应用节点上报的数据节点的标识和会话的SLA信息,评估中心可以按照数据节点的标识对接收到的信息进行分类汇总,然后根据汇总的SLA信息评估数据节点的状态信息。

步骤406、评估中心向所述应用节点发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

在本实施例中,评估中心在评估确定数据节点的状态信息之后,向所述应用节点返回评估响应消息,所述评估响应消息中携带所述数据节点的状态信息和数据节点的标识,例如1为数据节点可用,0为数据节点不可用。

步骤407、应用节点向所述负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

在本实施例中,应用节点在评估获得数据节点的状态信息后,可以向负载均衡器发送携带数据节点的状态信息和数据节点的标识的评估响应消息,以通知负载均衡器更新数据节点的状态信息。负载均衡器根据接收到的评估响应消息来更新数据节点的状态信息。

步骤408、评估中心在所述数据节点的状态信息发生更新后,向负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点更新的状态信息。

在本实施例中,若评估中心接收到了数据节点的状态由不可用变为可用(例如人工修复了故障的数据节点,并通知到评估中心)的通知消息,则评估中心向负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点更新的状态信息,以便于负载均衡器更新该数据节点的状态信息。

在本发明实施例提供的业务请求处理方法中,应用节点在确定数据节点不可访问时,获取业务请求对应的会话的SLA信息,然后请求评估 中心根据SLA信息和预设的故障阈值判断该数据节点的状态是否为可用,并通知负载均衡器该数据节点的状态信息,以便于负载均衡器后续在接收到该数据节点对应的业务请求后,拒绝向应用节点分发该业务请求。与现有技术应用节点只负责处理业务请求相比,本实施例避免了现有技术在数据节点的状态为不可用的情况下向应用节点分发业务请求,从而造成大量的业务请求堵塞在应用节点的会话队列的情况发生。本发明实施例可以及时对其他正常的数据节点上的业务请求进行处理,整体上提高了业务请求的处理效率。

可选的,评估中心还可以采用如下的方式来评估数据节点的状态信息:

统计预设时间内SLA信息超过业务的故障阈值的业务请求的数量;

在所述预设时间内SLA信息超过故障阈值的业务请求的数量大于第一阈值时,将所述数据节点的状态信息确定为不可用;

在所述预设时间内SLA信息超过故障阈值的业务请求的数量小于或等于第一阈值时,将所述数据节点的状态信息确定为可用。

具体的,针对语音业务,该预设时间可以为1分钟,第一阈值可以为10,若1分钟内时延超过200ms的业务请求的数量大于第一阈值10,则确定数据节点的状态信息为不可用,若1分钟内时延超过200ms的业务请求的数量小于或等于第一阈值10,则确定数据节点的状态信息为可用;针对数据业务,该预设时间可以为1分钟,第一阈值可以为20,对应的,若1分钟内时延超过500ms的语音业务请求的数量大于20,则确定数据节点的状态信息为不可用,若1分钟内时延超过500ms的语音业务请求的数量小于或等于20,则确定数据节点的状态信息为可用。

相对于仅仅判断时延是否超过故障阈值来确定数据节点的状态信息的方式,本实施例结合故障阈值和第一阈值来确定数据节点的状态信息,可以提高确定数据节点的状态信息的准确性。

参见图5,图5是本发明实施例四提供的负载均衡器的功能模块图。如图所示,本发明实施例提供的负载均衡器包括:

第一接收单元501,用于接收网元上报的业务请求,获取所述业务请求对应的数据节点的状态信息;

第一处理单元502,用于在所述数据节点的状态信息为不可用时,拒绝向应用节点分发所述业务请求;或者

缓存所述业务请求,在所述数据节点的状态信息变为可用时,向应用节点分发缓存的所述业务请求。其中,第一处理单元502拒绝向应用节点分发所述业务请求包括:丢弃所述业务请求。

在本实施例中,第一接收单元501获取业务请求对应的数据节点的状态信息包括:

第一接收单元501获取所述业务请求中携带的用户标识所在的号码段对应的数据节点的标识,获取所述数据节点标识对应的数据节点的当前状态信息。

继续参见图5,本实施例提供的负载均衡器还包括:

请求分发单元503,用于在所述数据节点的状态信息为可用时,向应用节点分发所述业务请求。

在本实施例提供的负载均衡器中,所述第一接收单元501还用于接收所述应用节点返回的评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

对应的,所述负载均衡器还包括状态更新单元504,用于根据接收到的状态信息更新所述数据节点的状态信息。

本发明实施例四提供的负载均衡器可以使用在前述对应的方法实施例一到三中,其具体参与业务请求处理方法的过程和有益效果详情参见前述方法实施例,在此不再赘述。

参见图6,图6是本发明实施例五提供的应用节点的功能模块图。如图所示,本发明实施例提供的应用节点包括:

第二接收单元601,用于接收负载均衡器发送的业务请求;

会话信息获取单元602,用于根据所述业务请求向数据节点请求数据访问,在访问失败时获取所述业务请求对应的会话的服务等级协议 SLA信息;

状态获取单元603,用于根据所述SLA信息获取所述数据节点的状态信息;

响应发送单元604,用于向所述负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

在本实施例提供的应用节点中,所述会话信息获取单元602获取所述业务请求对应的会话的服务等级协议SLA信息具体包括:

会话信息获取单元602获取所述业务请求对应的会话进行处理的起始时间和结束时间;

会话信息获取单元602根据所述起始时间和结束时间确定所述会话的时延,所述SLA信息中包括时延。

在本实施例提供的应用节点中,所述状态获取单元603根据SLA信息获取数据节点的状态信息具体包括:

状态获取单元603根据所述SLA信息和所述业务的故障阈值评估所述数据节点的状态信息;或者

状态获取单元603向评估中心上报所述数据节点的标识和所述会话的服务等级协议SLA信息,接收所述评估中心返回的评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

在本实施例提供的应用节点中,状态获取单元603根据SLA信息和所述业务的故障阈值评估所述数据节点的状态信息进一步包括:

状态获取单元603统计预设时间内SLA信息超过故障阈值的业务请求的数量;在所述预设时间内SLA信息超过故障阈值的业务请求的数量大于第一阈值时,将所述数据节点的状态信息确定为不可用;在所述预设时间内SLA信息超过故障阈值的业务请求的数量小于或等于第一阈值时,将所述数据节点的状态信息确定为可用。

进一步参见图6,在本实施例提供的应用节点中的响应发送单元604还用于在所述数据节点的状态信息发生更新后,向负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点更新的状态信息。

本发明实施例五提供的应用节点可以使用在前述对应的方法实施 例二中,应用节点兼具评估中心的功能,或者应用节点上设置有评估中心,应用节点具体参与业务请求处理方法的过程和有益效果详情参见前述方法实施例,在此不再赘述。

参见图7,图7是本发明实施例六提供的评估中心的功能模块图。

如图所示,本实施例提供的评估中心主要包括:

第三接收单元701,用于接收应用节点发送的数据节点的标识和所述业务请求对应的会话的服务等级协议SLA信息;

评估单元702,用于根据所述SLA信息和所述业务的故障阈值评估所述数据节点的状态信息;

第三发送单元703,用于向所述应用节点发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

在本实施例提供的评估中心中,所述评估单元702根据SLA信息和所述业务的故障阈值评估所述数据节点的状态信息包括:

评估单元702统计预设时间内SLA信息超过业务的故障阈值的业务请求的数量;在所述预设时间内SLA信息超过故障阈值的业务请求的数量大于第一阈值时,将所述数据节点的状态信息确定为不可用;在所述预设时间内SLA信息超过故障阈值的业务请求的数量小于或等于第一阈值时,将所述数据节点的状态信息确定为可用。

进一步参见图7,在本实施例提供的评估中心的第三发送单元703还用于在所述数据节点的状态信息发生更新后,向负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点更新的状态信息。

本发明实施例六提供的评估中心可以使用在前述对应的方法实施例一和三中,评估中心具体参与业务请求处理方法的过程和有益效果详情参见前述方法实施例,在此不再赘述。

参见图8,图8是本发明实施例七提供的业务请求处理系统的功能模块图。

如图所示,本发明实施例提供的业务请求处理系统主要包括负载均衡器801、应用节点802、评估中心803和数据节点804。其中,负载均 衡器801的具体功能组成和上述实施例四中的负载均衡器相同,详情参见上述实施例的描述。应用节点802的具体功能组成和上述实施例五中的应用节点相同,详情参见上述实施例的描述。评估中心803的具体功能组成和上述实施例六中的评估中心相同,详情参见上述实施例的描述。需要说明的是,应用节点802、评估中心803可以独立设置或合设在一起,进而应用节点802或评估中心803可以独立实现应用节点802、评估中心803两者的功能。

本发明实施例七提供的业务请求处理系统的有益效果兼有上述实施例中负载均衡器、应用节点、评估中心各自的有益效果。

参见图9,图9是本发明实施例八提供的负载均衡器的结构示意图。

如图所示,本发明实施例提供的负载均衡器包括:第一处理器901、第一存储器902、第一总线903、第一输入设备904、第一输出设备905以及第一网络接口906。

其中,所述第一存储器902用于存储计算机执行指令,所述第一处理器901与所述第一存储器902通过所述第一总线903连接,当所述负载均衡器运行时,所述第一处理器901执行所述计算机执行指令,以使所述负载均衡器执行如下方法:

接收网元上报的业务请求,获取所述业务请求对应的数据节点的状态信息;

在所述数据节点的状态信息为不可用时,拒绝向应用节点分发所述业务请求;或者缓存所述业务请求,在所述数据节点的状态信息变为可用时,向应用节点分发缓存的所述业务请求。

其中,负载均衡器执行上述方法的具体过程、有益效果均和上述实施例一、二、三中的执行过程和有益效果相同,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例一、二、三中的叙述。

所述第一输入设备904可以用于向负载均衡器输入命令和信息,第一输入设备904如键盘或指向设备,如鼠标、轨迹球、触摸板、麦克风、 操纵杆、游戏垫、圆盆式卫星电视天线、扫描仪或类似设备。这些输入设备可以通过第一总线903连接至第一处理器901。

第一输出设备905可以用于负载均衡器输出信息,除了监视器之外,第一输出设备905还可以为其他外围输出设各,如扬声器和/或打印设备,这些输出设备也可以通过第一总线903连接到第一处理器901。

负载均衡器可以通过第一网络接口906连接到网络中,例如连接到局域网(Local Area Network,LAN)。在联网环境下,负载均衡器中存储的计算机执行指令可以存储在远程存储设备中,而不限于在本地存储。

第一存储器902可以包括以易失性和/或非易失性存储器形式的计算机存储媒体,如只读存储器和/或随机存取存储器。第一存储器902还可以包括操作系统、应用程序、其他程序模块和程序数据。

参见图10,图10是本发明实施例九提供的应用节点的结构示意图。

如图所示,本发明实施例提供的应用节点包括:第二处理器1001、第二存储器1002、第二总线1003、第二输入设备1004、第二输出设备1005以及第二网络接口1006。

其中,所述第二存储器1002用于存储计算机执行指令,所述第二处理器1001与所述第二存储器1002通过所述第二总线1003连接,当所述应用节点运行时,所述第二处理器1001执行所述计算机执行指令,以使所述应用节点执行如下方法:

接收负载均衡器发送的业务请求;

根据所述业务请求向数据节点请求数据访问,在访问失败时获取所述业务请求对应的会话的服务等级协议SLA信息;

根据所述SLA信息获取所述数据节点的状态信息;

向所述负载均衡器发送评估响应消息,所述评估响应消息中携带所述数据节点的状态信息。

其中,应用节点执行上述方法的具体过程、有益效果均和上述实施例二中的执行过程和有益效果相同,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例二的叙述。

所述第二输入设备1004可以用于向应用节点输入命令和信息,第二输入设备1004如键盘或指向设备,如鼠标、轨迹球、触摸板、麦克风、操纵杆、游戏垫、圆盆式卫星电视天线、扫描仪或类似设备。这些输入设备可以通过第二总线1003连接至第二处理器1001。

第二输出设备1005可以用于应用节点输出信息,除了监视器之外,第二输出设备1005还可以为其他外围输出设各,如扬声器和/或打印设备,这些输出设备也可以通过第二总线1003连接到第二处理器1001。

应用节点可以通过第二网络接口1006连接到网络中,例如连接到局域网。在联网环境下,第二存储器1002中存储的计算机执行指令可以存储在远程存储设备中,而不限于在应用节点本地存储。

第二存储器1002可以包括以易失性和/或非易失性存储器形式的计算机存储媒体,如只读存储器和/或随机存取存储器。第二存储器1002还可以包括操作系统、应用程序、其他程序模块和程序数据。

需要说明的是,上述设备中各单元、模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本领域普通技术人员将会理解,本发明的各个方面、或各个方面的可能实现方式可以被具体实施为系统、方法或者计算机程序产品。因此,本发明的各方面、或各个方面的可能实现方式可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件等等),或者组合软件和硬件方面的实施例的形式,在这里都统称为“电路”、“模块”或者“系统”。此外,本发明的各方面、或各个方面的可能实现方式可以采用计算机程序产品的形式,计算机程序产品是指存储在计算机可读介质中的计算机可读程序代码。

计算机可读介质可以是计算机可读信号介质或者计算机可读存储 介质。计算机可读存储介质包含但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或者装置,或者前述的任意适当组合,如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、光纤、便携式只读存储器(CD-ROM)。

计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。

计算机可读程序代码可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为单独的软件包、部分在用户的计算机上并且部分在远程计算机上,或者完全在远程计算机或者服务器上执行。也应该注意,在某些替代实施方案中,在流程图中各步骤、或框图中各块所注明的功能可能不按图中注明的顺序发生。例如,依赖于所涉及的功能,接连示出的两个步骤、或两个块实际上可能被大致同时执行,或者这些块有时候可能被以相反顺序执行。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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