CN110830551A - 业务请求处理方法、装置及系统 - Google Patents
业务请求处理方法、装置及系统 Download PDFInfo
- Publication number
- CN110830551A CN110830551A CN201910943954.9A CN201910943954A CN110830551A CN 110830551 A CN110830551 A CN 110830551A CN 201910943954 A CN201910943954 A CN 201910943954A CN 110830551 A CN110830551 A CN 110830551A
- Authority
- CN
- China
- Prior art keywords
- service request
- request
- characteristic information
- processing
- target server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种业务请求处理方法、装置及系统,涉及网关技术领域,可解决流量的热点问题,智能均衡服务器的压力,减少业务请求处理响应时长。其中方法包括:向云网关设备发送业务请求,以使得所述云网关设备根据所述业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照所述集群历史的请求处理记录,获取历史相似条件下对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便依据所述目标服务器标识进行业务请求的转发;接收所述业务请求的处理结果。本申请适用于业务请求处理。
Description
技术领域
本申请涉及网关技术领域,尤其是涉及到一种业务请求处理方法、装置及系统。
背景技术
在传统的远程过程调用协议(Remote Procedure Call Protocol,RPC)系统中,客户端的业务请求通过转发模块转发至服务器,如转发模块可包括网关、路由器等。然后由服务器对业务请求进行处理并返回相应的处理结果。
目前,在转发模块接收到客户端的业务请求时,转发模块按照路由表将业务请求转发至集群中对应的服务器进行处理。
然而,当客户端的业务请求增多时,这种按照路由表进行业务请求转发的方式会导致部分服务器承载过多的任务量,服务器之间任务分配不均,无法均等分散服务器压力,很容易形成系统瓶颈,造成服务器负载压力过大,影响业务请求处理的响应时长,严重时会出现宕机现象。
发明内容
有鉴于此,本申请提供了一种业务请求处理方法、装置及系统,主要目的在于解决目前按照路由表进行业务请求转发的方式会导致服务器之间负载不均衡,影响业务请求处理的响应时长,以及增加服务器宕机风险的技术问题。
依据本申请的一个方面,提供了一种业务请求处理方法,可应用于客户端侧,该方法包括:
向云网关设备发送业务请求,以使得所述云网关设备根据所述业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照所述集群历史的请求处理记录,获取历史相似条件下对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便依据所述目标服务器标识进行业务请求的转发;
接收业务请求的处理结果。
可选的,所述方法还包括:
输出所述业务请求的处理结果。
可选的,所述目标服务器标识是通过随机森林模型计算得到的,所述随机森林模型是预先根据所述集群的历史请求处理记录数据训练得到的,所述方法还包括:
向所述云网关设备发送所述业务请求的请求特征信息和相应的处理结果,以便所述云网关设备创建所述随机森林模型对应的新训练集,所述新训练集用于更新所述随机森林模型。
可选的,所述预设标准为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。
依据本申请的另一方面,提供了一种业务请求处理方法,可应用于云网关设备侧,该方法包括:
当接收到业务请求时,获取所述业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息;
参照所述集群历史的请求处理记录,获取在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识;
依据所述目标服务器标识,将业务请求转发给目标服务器进行处理。
可选的,所述目标服务器标识是通过随机森林模型计算得到的,所述方法还包括:
利用所述集群历史的请求处理记录中历史业务请求数据和相应的处理结果数据,创建训练集;
通过所述训练集,基于随机森林算法训练得到随机森林模型。
可选的,所述利用所述集群历史的请求处理记录中历史业务请求数据和相应的处理结果数据,创建训练集,具体包括:
对所述历史业务请求数据进行数字化和归一化处理后,获取历史业务请求的样本请求特征信息,以及处理所述历史业务请求的服务器当时的样本状态特征信息和对应的样本处理结果;
利用所述样本请求特征信息和对应请求处理的服务器的标识、所述样本状态特征信息、所述样本处理结果之间的映射关系,创建所述训练集。
可选的,通过所述随机森林模型计算所述目标服务器标识的过程,具体包括:
将所述请求特征信息和所述状态特征信息分别输入到所述随机森林模型包含的多个决策树子模型中,获取多个决策树子模型分别依据所述映射关系计算得到的在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的服务器标识,并基于大多数原则通过投票表决方式获取所述目标服务器标识。
可选的,所述预设标准为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。
可选的,所述通过所述训练集,基于随机森林算法训练得到所述随机森林模型,具体包括:
基于所述训练集选取测试集;
利用所述测试集对训练得到的所述随机森林模型进行测试,若测试结果不符合要求,则对所述随机森林模型进行再次训练,直至测试结果符合要求。
可选的,若所述目标服务器标识为多个,则所述依据所述目标服务器标识,将业务请求转发给目标服务器进行处理,具体包括:
通过一致性哈希算法从多个所述目标服务器标识中选择一个服务器标识;
将所述业务请求转发给与被选中的服务器标识对应的目标服务器进行处理。
可选的,所述通过一致性哈希算法从多个所述目标服务器标识中选择一个服务器标识,具体包括:
计算多个所述目标服务器标识分别对应的第一哈希值,并将所述第一哈希值映射到预设取值范围的圆上;及
计算所述业务请求对应数据标识的第二哈希值,并将所述第二哈希值映射到所述圆上;
从所述第二哈希值在所述圆上映射的位置开始顺时针查找,获取查找到的第一个与所述第一哈希值对应的映射点,则将所述映射点对应的目标服务器标识,确定为所述被选中的服务器标识。
可选的,若在所述圆上未查找到所述映射点,则所述方法还包括:
查询多个所述目标服务器标识分别对应服务器的历史故障次数;
将所述历史故障次数最少的一台服务器所对应的目标服务器标识,确定为所述被选中的服务器标识。
依据本申请的又一方面,提供了一种业务请求处理装置,可应用于客户端侧,该装置包括:
发送模块,用于向云网关设备发送业务请求,以使得所述云网关设备根据所述业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照所述集群历史的请求处理记录,获取历史相似条件下对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便依据所述目标服务器标识进行业务请求的转发;
接收模块,用于接收所述业务请求的处理结果。
可选的,所述装置还包括:
输出模块,用于输出所述业务请求的处理结果。
可选的,所述目标服务器标识是通过随机森林模型计算得到的,所述随机森林模型是预先根据所述集群的历史请求处理记录数据训练得到的,
所述发送模块,还用于向所述云网关设备发送所述业务请求的请求特征信息和相应的处理结果,以便所述云网关设备创建所述随机森林模型对应的新训练集,所述新训练集用于更新所述随机森林模型。
可选的,所述预设标准为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。
依据本申请的再一方面,提供了一种业务请求处理装置,可应用于云网关设备侧,该装置包括:
获取模块,用于当接收到业务请求时,获取所述业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息;
所述获取模块,还用于参照所述集群历史的请求处理记录,获取在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识;
转发模块,用于依据所述目标服务器标识,将所述业务请求转发给目标服务器进行处理。
可选的,所述目标服务器标识是通过随机森林模型计算得到的,所述装置还包括:
创建模块,用于利用所述集群历史的请求处理记录中历史业务请求数据和相应的处理结果数据,创建训练集;
训练模块,用于通过所述训练集,基于随机森林算法训练得到所述随机森林模型。
可选的,所述创建模块,具体用于对所述历史业务请求数据进行数字化和归一化处理后,获取历史业务请求的样本请求特征信息,以及处理所述历史业务请求的服务器当时的样本状态特征信息和对应的样本处理结果;
利用所述样本请求特征信息和对应请求处理的服务器的标识、所述样本状态特征信息、所述样本处理结果之间的映射关系,创建所述训练集。
可选的,所述获取模块,具体用于将所述请求特征信息和所述状态特征信息分别输入到所述随机森林模型包含的多个决策树子模型中,获取多个决策树子模型分别依据所述映射关系计算得到的在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的服务器标识,并基于大多数原则通过投票表决方式获取所述目标服务器标识。
可选的,所述预设标准为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。
可选的,所述训练模块,具体用于基于所述训练集选取测试集;
利用所述测试集对训练得到的所述随机森林模型进行测试,若测试结果不符合要求,则对所述随机森林模型进行再次训练,直至测试结果符合要求。
可选的,所述转发模块,具体用于若所述目标服务器标识为多个,则通过一致性哈希算法从多个所述目标服务器标识中选择一个服务器标识;
将所述业务请求转发给与被选中的服务器标识对应的目标服务器进行处理。
可选的,所述转发模块,具体还用于计算多个所述目标服务器标识分别对应的第一哈希值,并将所述第一哈希值映射到预设取值范围的圆上;及
计算所述业务请求对应数据标识的第二哈希值,并将所述第二哈希值映射到所述圆上;
从所述第二哈希值在所述圆上映射的位置开始顺时针查找,获取查找到的第一个与所述第一哈希值对应的映射点,则将所述映射点对应的目标服务器标识,确定为所述被选中的服务器标识。
可选的,所述转发模块,具体还用于若在所述圆上未查找到所述映射点,则查询多个所述目标服务器标识分别对应服务器的历史故障次数;
将所述历史故障次数最少的一台服务器所对应的目标服务器标识,确定为所述被选中的服务器标识。
依据本申请再一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述可应用于客户端侧的业务请求处理方法。
依据本申请再一个方面,提供了一种客户端设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述可应用于客户端侧的业务请求处理方法。
依据本申请再一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述可应用于云网关设备侧的业务请求处理方法。
依据本申请再一个方面,提供了一种云网关设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述可应用于云网关设备侧的业务请求处理方法。
依据本申请再一个方面,提供了一种业务请求处理系统,包括:上述客户端设备和上述云网关设备。
借由上述技术方案,本申请提供的一种业务请求处理方法、装置及系统,与目前按照路由表进行业务请求转发的方式相比,本申请云网关设备在接收到业务请求时,可根据业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照集群历史的请求处理记录,获取历史相似条件下对具有该请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,进而进行相应转发。从而找到在此条件下处理该业务请求最为合适的服务器,保证业务请求成功处理,减少处理响应时长,同时可减少集中一台服务器处理大量请求的情况发生,达到资源的最优分配,减轻服务器负载压力,减少出现服务器宕机现象。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的一种业务请求处理方法的流程示意图;
图2示出了本申请实施例提供的另一种业务请求处理方法的流程示意图;
图3示出了本申请实施例提供的又一种业务请求处理方法的流程示意图;
图4示出了本申请实施例提供的一种应用场景的实例示意图;
图5示出了本申请实施例提供的一种业务请求处理装置的结构示意图;
图6示出了本申请实施例提供的另一种业务请求处理装置的结构示意图;
图7示出了本申请实施例提供的又一种业务请求处理装置的结构示意图;
图8示出了本申请实施例提供的再一种业务请求处理装置的结构示意图;
图9示出了本申请实施例提供的一种业务请求处理系统的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
针对目前现有技术中会导致服务器之间负载不均衡,影响业务请求处理的响应时长,以及增加服务器宕机风险的技术问题。本实施例提供了一种业务请求处理方法,如图1所示,可应用于客户端侧,该方法包括:
101、客户端向云网关设备发送业务请求。
进一步的,以使得云网关设备根据业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照集群历史的请求处理记录,获取历史相似条件下对具有该请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便于云网关设备依据目标服务器标识进行业务请求的转发。
其中,请求特征信息可包含业务请求的调用系统、请求内容、请求类型等。状态特征信息可包含服务器在当前时间段内的连接数、CPU负载、输入/输出(IO,Input/Output)负载、硬盘使用情况等。当前时间段可为从当前时刻算起之前5分钟、或15分钟、或30分钟等的时间段,即能够表征服务器当前负载压力的时间段。目标服务器标识可为服务器的名称或ID号等。对于业务请求处理结果满足的预设标准具体可根据实际情况预先设定,可选的,预设标准可为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。例如,在规定的时长内能够返回业务请求相应的处理结果,即可认为是满足预设标准。通过这种标准设定,可保证业务请求的处理成功率。
例如,云网关设备可预先统计集群历史的请求处理记录,如历史请求数据以及集群中各状态的服务器相应的请求处理结果。在云网关设备接收到业务请求后,根据该请求的请求特征以及集群中各服务器当前的状态特征,参照该集群历史的请求处理记录,找到与该服务器状态特征对应的历史相似条件下对具有该请求特征的业务请求处理结果能够满足预设标准的目标服务器,相当于可计算出在当前时间段内集群各状态的服务器中,哪个服务器对具有该请求特征的业务请求进行处理,可在规定的时长内返回相应的处理结果。进而最终可计算出这个服务器的标识,以便云网关设备向与该标识对应的服务器转发该业务请求。
102、接收业务请求的处理结果。
本实施例提供的业务请求处理方法,与目前现有技术相比,能够保证业务请求及时成功处理,减少请求处理响应时长,同时可减少集中一台服务器处理大量请求的情况发生,达到资源的最优分配,可减轻服务器负载压力,可减少出现服务器宕机现象。
进一步的,作为上述实施例具体实施方式的细化和扩展,在步骤102之后,还可包括:客户端输出业务请求的处理结果。例如,如果业务请求处理成功,将请求的业务功能进行展示、播放等;如果业务请求为异常请求,那么会得到请求失败的响应信息,然后以文字、图片、视频、音频、灯光、振动等形式输出。
为了保证准确找到适合处理该业务请求的目标服务器的标识,可选的,该目标服务器标识可通过随机森林模型计算得到的,其中,随机森林模型是预先根据所述集群的历史请求处理记录数据训练得到的。对于本实施例中的随机森林模型,为了后续得到更加准确的计算结果,可通过新训练集对其进行再次训练,以提高该模型的计算精确性。而为了便于新训练集的创建效率,作为一种可选方式,本实施例方法还可包括:向云网关设备发送该业务请求的请求特征信息和相应的处理结果,进一步的,以便于云网关设备创建随机森林模型对应的新训练集,而该新训练集用于更新随机森林模型。这样云网关设备通过收集各个客户端上报的请求特征信息和相应的处理结果,并查询当时处理该请求的服务器的状态特征,进而可快速创建新的训练集。
上述实施例内容为在客户端侧描述的业务请求处理过程,进一步的,为了完整说明本实施例的实施方式,本实施例还提供了另一种业务请求处理方法,可应用于云网关设备侧,如图2所示,该方法包括:
201、当云网关设备接收到业务请求时,获取业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息。
在步骤201中,集群中各服务器具体可以为理论上能够处理该业务请求的这些服务器,即不考虑负载状态的条件下,能够成功处理该业务请求的这些服务器。例如,按照除了业务请求的类型,划分不同子集群的服务器,不同类型的业务请求通过不同的子集群服务器进行处理,如对于订单相关业务请求,理论上可通过子集群A的各个服务器进行处理,而对于软件安全检测相关的业务请求,理论上可通过子集群B的各个服务器进行处理。如果当前接收到的业务请求与订单业务相关,那么获取子集群A的各个服务器当前的状态特征信息。
202、参照集群历史的请求处理记录,获取在与该状态特征信息对应的历史相似条件下,对具有该请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识。
例如,参照集群历史的请求处理记录,找到历史相似场景中能够成功处理具有该请求特征或接近于该请求特征(如请求特征之间相似度小于一定阈值)的业务请求的目标服务器(处理响应时长小于一定阈值),并且该目标服务器当时的状态特征和该目标服务器当前时间段的状态特征之间的相似度大于一定阈值。
203、依据获取到的目标服务器标识,将业务请求转发给目标服务器进行处理。
例如,参照集群历史的请求处理记录,获取到服务器A的标识,即当前状态下的服务器A,可处理具备该请求特征的业务请求,且处理耗时小于一定阈值;然后云网关设备按照该标识将该业务请求转发给服务器A。
通过上述可应用于云网关设备侧的业务请求处理方法,与目前现有技术相比,能够保证业务请求及时成功处理,减少请求处理响应时长,同时可减少集中一台服务器处理大量请求的情况发生,达到资源的最优分配,可减轻服务器负载压力,可减少出现服务器宕机现象。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,本实施例提供了又一种应用数据通信方法,如图3所示,该方法包括:
301、利用集群历史的请求处理记录中历史业务请求数据和相应的处理结果数据,创建训练集。
其中,历史业务请求数据可包括请求调用系统、请求的内容、请求的类型,请求对应处理的服务器状态特征(如服务器当时的连接数、CPU负载、IO负载、硬盘使用情况等)等。处理结果数据中可包含请求结果、接口的处理耗时等。
为了得到计算精确的随机森林模型,需要通过数据质量较好的训练集进行训练,为此本实施例可利用历史业务请求数据和相应的处理结果数据,创建训练集。
作为一种可选方式,步骤301具体可包括:对历史业务请求数据进行数字化和归一化处理后,获取历史业务请求的样本请求特征信息,以及处理历史业务请求的服务器当时的样本状态特征信息和对应的样本处理结果(例如是否能成功处理请求,处理耗时等);然后利用样本请求特征信息和对应请求处理的服务器的标识、样本状态特征信息、样本处理结果之间的映射关系,创建训练集。
在本可选方式中,在创建训练集之前,对历史业务请求数据进行数字化和归一化处理,可实现数据的规范化,可过滤过多的实质重复数据,进而实现提升训练集的数据质量。
302、通过创建得到的训练集,基于随机森林算法训练得到随机森林模型。
其中,随机森林模型中可包含多个决策树子模型,每个决策树子模型都预先分别通过训练集训练得到,每个决策树子模型都有各自对应的决策树分类算法。对于本实施例,利用这些决策树子模型分别进行分类计算,每个决策树子模型都可依据上述映射关系分类计算得到在各服务器当前的状态特征信息的条件下,对具有该请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,然后采用投票表决方式得到最终的计算结果,即随机森林模型计算的结果。
例如,基于不同的决策树算法,利用训练集分别训练得到各个决策树子模型,然后基于这些决策树子模型生成随机森林模型,即可通过投票表决方式,少数服从多数,针对这些决策树子模型得到的结果进行投票,投票最高的结果作为随机森林模型的计算结果。
除了上述投票表决方式以外,还可依据每个决策树子模型的历史分类计算的准确性,配置这些决策树子模型分别对应的权重,这样在得到这些决策树子模型的计算结果以后,再利用加权计算得到随机森林模型的计算结果。
进一步的,为了使得训练得到的随机森林模型的计算精确性满足要求,作为一种可选方式,在模型训练过程中可采用测试集对其进行测试,相应的,步骤302具体可包括:首先基于训练集选取测试集;然后利用测试集对训练得到的随机森林模型进行测试,若测试结果不符合要求,则对随机森林模型进行再次训练,直至测试结果符合要求。例如,将训练集划分多份子集,依次选取其中一个子集作为测试集对该模型进行测试,如果这些个测试结果中的绝大多数或者全部符合要求,则认为该模型的计算精确性满足要求。
303、当云网关设备接收到业务请求时,获取业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息。
为了后续计算结果的精确性,首先可对业务请求数据进行数字化和归一化处理,然后在获取其对应的请求特征信息。
304、将获取到的请求特征信息和状态特征信息分别输入到随机森林模型包含的多个决策树子模型中,获取多个决策树子模型分别依据上述映射关系计算得到的在与该状态特征信息对应的历史相似条件下,对具有该请求特征信息的业务请求处理结果能够满足预设标准的服务器标识,并基于大多数原则通过投票表决方式获取目标服务器标识。
例如,针对各个决策树子模型计算得到的服务器标识进行投票,将票数大于一定比例阈值的服务器标识,作为随机森林模型计算得到的目标服务器标识。
在本实施例中,通过执行步骤304是为了获取在各服务器当前的状态特征信息的条件下,对具有该请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识。可选的,预设标准可以为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。其中,预设时长阈值可根据实际情况预先设定。
如果通过随机森林模型计算得到的目标服务器标识为一个,则云网关设备将业务请求转发给与这个标识对应的服务器进行处理。而关于计算结果对应多个服务器标识的情况,为了找到更加合适的服务器,执行步骤305至306所示的过程。
305、若通过随机森林模型计算得到的目标服务器标识为多个,则通过一致性哈希算法从多个目标服务器标识中选择一个服务器标识。
可选的,步骤305中一致性哈希算法的计算过程具体可包括:计算多个目标服务器标识分别对应的第一哈希值,并将该第一哈希值映射到预设取值范围的圆上;及计算业务请求对应数据标识的第二哈希值,并将第二哈希值同样映射到该圆上;然后从第二哈希值在圆上映射的位置开始顺时针查找,获取查找到的第一个与第一哈希值对应的映射点,则将该映射点对应的目标服务器标识,确定为被选中的服务器标识。
例如,如图4所示,首先计算目标服务器的哈希值,并将其配置到0~232的圆上;然后采用同样的方法求出业务请求数据的键的哈希值,并映射到相同的圆上;最后从数据映射到位置开始顺时针查找,找到第一个服务器作为被选中的服务器。如果超过232仍然找不到服务器,就将第一个映射到圆上哈希值的服务器作为被选中的服务器。通过这种利用一致性哈希算法可找到更加合适的服务器处理业务请求,避免服务器集中处理过多的业务请求,造成负载过大的风险。
进一步的,若在该圆上未查找到映射点,除了上述可选方式以外,作为另一种可选方式,本实施例方法还可包括:查询多个目标服务器标识分别对应服务器的历史故障次数;然后将历史故障次数最少的一台服务器所对应的目标服务器标识,确定为被选中的服务器标识。通过这种可选方式,考虑了服务器故障频率因素,可保证业务请求处理的成功率。
306、将业务请求转发给与被选中的服务器标识对应的目标服务器进行处理。
通过应用上述方案,能够保证业务请求及时成功处理,减少请求处理响应时长,同时可减少集中一台服务器处理大量请求的情况发生,达到资源的最优分配,可减轻服务器负载压力,可减少出现服务器宕机现象。
进一步的,作为图1所示方法的具体实现,本申请实施例提供了一种可应用于客户端侧的业务请求处理装置,如图5所示,该装置包括:发送模块41、接收模块42。
发送模块41,用于向云网关设备发送业务请求。
进一步的,以使得所述云网关设备根据所述业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照所述集群历史的请求处理记录,获取历史相似条件下对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便依据所述目标服务器标识进行业务请求的转发。
接收模块42,用于接收所述业务请求的处理结果。
在具体的应用场景中,如图6所示,本装置还包括:输出模块43;
输出模块43,用于输出所述业务请求的处理结果。
在具体的应用场景中,可选的,所述目标服务器标识是通过随机森林模型计算得到的,所述随机森林模型是预先根据所述集群的历史请求处理记录数据训练得到的。相应的,所述发送模块41,还用于向所述云网关设备发送所述业务请求的请求特征信息和相应的处理结果。
进一步的,以便于所述云网关设备创建所述随机森林模型对应的新训练集,所述新训练集用于更新所述随机森林模型。
在具体的应用场景中,可选的,所述预设标准为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。
需要说明的是,本实施例提供的一种可应用于用户客户端侧的业务请求处理装置所涉及各功能单元的其它相应描述,可以参考图1中的对应描述,在此不再赘述。
进一步的,作为图2和图3所示方法的具体实现,本申请实施例提供了一种可应用于云网关设备侧的业务请求处理装置,如图7所示,该装置包括:获取模块51、转发模块52。
获取模块51,用于当接收到业务请求时,获取所述业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息;
所述获取模块51,还用于参照所述集群历史的请求处理记录,获取在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识;
转发模块52,用于依据所述目标服务器标识,将所述业务请求转发给目标服务器进行处理。
在具体的应用场景中,所述目标服务器标识是通过随机森林模型计算得到的,相应的,如图8所示,本装置还包括:创建模块53、训练模块54;
创建模块53,用于利用所述集群历史的请求处理记录中历史业务请求数据和相应的处理结果数据,创建训练集;
训练模块54,用于通过所述训练集,基于随机森林算法训练得到所述随机森林模型。
在具体的应用场景中,所述创建模块53,具体用于对所述历史业务请求数据进行数字化和归一化处理后,获取历史业务请求的样本请求特征信息,以及处理所述历史业务请求的服务器当时的样本状态特征信息和对应的样本处理结果;利用所述样本请求特征信息和对应请求处理的服务器的标识、所述样本状态特征信息、所述样本处理结果之间的映射关系,创建所述训练集。
在具体的应用场景中,所述获取模块51,具体用于将所述请求特征信息和所述状态特征信息分别输入到所述随机森林模型包含的多个决策树子模型中,获取多个决策树子模型分别依据所述映射关系计算得到的在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的服务器标识,并基于大多数原则通过投票表决方式获取所述目标服务器标识。
在具体的应用场景中,可选的,所述预设标准为能够成功处理业务请求、且处理请求耗时小于或等于预设时长阈值。
在具体的应用场景中,所述训练模块54,具体用于基于所述训练集选取测试集;利用所述测试集对训练得到的所述随机森林模型进行测试,若测试结果不符合要求,则对所述随机森林模型进行再次训练,直至测试结果符合要求。
在具体的应用场景中,所述转发模块52,具体用于若所述目标服务器标识为多个,则通过一致性哈希算法从多个所述目标服务器标识中选择一个服务器标识;将所述业务请求转发给与被选中的服务器标识对应的目标服务器进行处理。
在具体的应用场景中,所述转发模块52,具体还用于计算多个所述目标服务器标识分别对应的第一哈希值,并将所述第一哈希值映射到预设取值范围的圆上;及计算所述业务请求对应数据标识的第二哈希值,并将所述第二哈希值映射到所述圆上;从所述第二哈希值在所述圆上映射的位置开始顺时针查找,获取查找到的第一个与所述第一哈希值对应的映射点,则将所述映射点对应的目标服务器标识,确定为所述被选中的服务器标识。
在具体的应用场景中,所述转发模块52,具体还用于若在所述圆上未查找到所述映射点,则查询多个所述目标服务器标识分别对应服务器的历史故障次数;将所述历史故障次数最少的一台服务器所对应的目标服务器标识,确定为所述被选中的服务器标识。
需要说明的是,本实施例提供的一种可应用于云网关设备侧的业务请求处理装置所涉及各功能单元的其它相应描述,可以参考图2和图3中的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1所示的可应用于用户客户端侧的业务请求处理方法。基于上述如图2和图3所示方法,本申请实施例还提供了另一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图2和图3所示的可应用于云网关设备侧的业务请求处理方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景的方法。
基于上述如图1所示的方法,以及图5和图6所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种客户端设备,具体可以为个人计算机、平板电脑、智能手机、智能手表、智能手环、或其他网络设备等,该客户端设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1所示的可应用于用户客户端侧的业务请求处理方法。
基于上述如图2和图3所示的方法,以及图7和图8所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种云网关设备,具体可以为网关设备、服务器、或其他网络设备等。该设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图2和图3所示的可应用于云网关设备侧的业务请求处理方法。
可选的,上述两种实体设备都还可以包括用户接口、网络接口、摄像头、射频(Radio Frequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种客户端设备和云网关设备的实体设备结构并不构成对这两种实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述两个实体设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。
基于上述内容,进一步的,本申请实施例还提供了一种业务请求处理系统,如图9所示,该系统包括云网关设备61、客户端设备62;
其中,客户端设备62可用于执行如图1所示的方法,云网关设备61可用于执行如图2和图3所示的方法。
客户端设备62,可用于向云网关设备61发送业务请求;
云网关设备61,可用于接收客户端设备62发送的业务请求,获取所述业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息;参照所述集群历史的请求处理记录,获取在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识;依据所述目标服务器标识,将所述业务请求转发给目标服务器进行处理。
客户端设备62,还可用于接收返回的业务请求处理结果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。通过应用本申请的技术方案,能够保证业务请求及时成功处理,减少请求处理响应时长,同时可减少集中一台服务器处理大量请求的情况发生,达到资源的最优分配,可减轻服务器负载压力,可减少出现服务器宕机现象。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (10)
1.一种业务请求处理方法,其特征在于,包括:
向云网关设备发送业务请求,以使得所述云网关设备根据所述业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照所述集群历史的请求处理记录,获取历史相似条件下对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便依据所述目标服务器标识进行业务请求的转发;
接收业务请求的处理结果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
输出所述业务请求的处理结果。
3.一种业务请求处理方法,其特征在于,包括:
当接收到业务请求时,获取所述业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息;
参照所述集群历史的请求处理记录,获取在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识;
依据所述目标服务器标识,将业务请求转发给目标服务器进行处理。
4.一种业务请求处理装置,其特征在于,包括:
发送模块,用于向云网关设备发送业务请求,以使得所述云网关设备根据所述业务请求对应的请求特征信息以及集群中各服务器当前的状态特征信息,参照所述集群历史的请求处理记录,获取历史相似条件下对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识,以便依据所述目标服务器标识进行业务请求的转发;
接收模块,用于接收所述业务请求的处理结果。
5.一种业务请求处理装置,其特征在于,包括:
获取模块,用于当接收到业务请求时,获取所述业务请求对应的请求特征信息,以及集群中各服务器当前的状态特征信息;
所述获取模块,还用于参照所述集群历史的请求处理记录,获取在与所述状态特征信息对应的历史相似条件下,对具有所述请求特征信息的业务请求处理结果能够满足预设标准的目标服务器标识;
转发模块,用于依据所述目标服务器标识,将所述业务请求转发给目标服务器进行处理。
6.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至2中任一项所述的业务请求处理方法。
7.一种客户端设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至2中任一项所述的业务请求处理方法。
8.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求3所述的业务请求处理方法。
9.一种云网关设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求3所述的业务请求处理方法。
10.一种业务请求处理系统,其特征在于,包括:如权利要求7所述的客户端设备和如权利要求9所述的云网关设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910943954.9A CN110830551B (zh) | 2019-09-30 | 2019-09-30 | 业务请求处理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910943954.9A CN110830551B (zh) | 2019-09-30 | 2019-09-30 | 业务请求处理方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110830551A true CN110830551A (zh) | 2020-02-21 |
CN110830551B CN110830551B (zh) | 2023-01-24 |
Family
ID=69548630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910943954.9A Active CN110830551B (zh) | 2019-09-30 | 2019-09-30 | 业务请求处理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110830551B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113052691A (zh) * | 2021-04-30 | 2021-06-29 | 中国工商银行股份有限公司 | 一种分布式对账系统业务均衡方法,节点及集群 |
CN113411400A (zh) * | 2021-06-18 | 2021-09-17 | 中国工商银行股份有限公司 | 信息调用方法、装置、电子设备及可读存储介质 |
CN113726881A (zh) * | 2021-08-30 | 2021-11-30 | 北京百度网讯科技有限公司 | 通信连接建立方法、相关装置及计算机程序产品 |
CN115865670A (zh) * | 2023-02-27 | 2023-03-28 | 灵长智能科技(杭州)有限公司 | 基于内核调优的web安全网关并发性能调节方法及装置 |
CN117201502A (zh) * | 2023-09-12 | 2023-12-08 | 广州云硕科技发展有限公司 | 基于人工智能的智能云服务器接入方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109768879A (zh) * | 2018-12-14 | 2019-05-17 | 北京爱奇艺科技有限公司 | 目标业务服务器的确定方法、装置及服务器 |
CN110022378A (zh) * | 2019-04-22 | 2019-07-16 | 苏州排忧网络技术有限责任公司 | 基于状态的vpn服务器智能分配方法 |
US20190253517A1 (en) * | 2018-02-13 | 2019-08-15 | International Business Machines Corporation | Conversational agent learning model service selection to address a client service request |
-
2019
- 2019-09-30 CN CN201910943954.9A patent/CN110830551B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190253517A1 (en) * | 2018-02-13 | 2019-08-15 | International Business Machines Corporation | Conversational agent learning model service selection to address a client service request |
CN110162606A (zh) * | 2018-02-13 | 2019-08-23 | 国际商业机器公司 | 用于解决客户端服务请求的会话代理学习模型服务选择 |
CN109768879A (zh) * | 2018-12-14 | 2019-05-17 | 北京爱奇艺科技有限公司 | 目标业务服务器的确定方法、装置及服务器 |
CN110022378A (zh) * | 2019-04-22 | 2019-07-16 | 苏州排忧网络技术有限责任公司 | 基于状态的vpn服务器智能分配方法 |
Non-Patent Citations (2)
Title |
---|
李舰等: "《数据科学中的R语言》", 31 July 2015 * |
陈大才等: ""基于预测模型及独立训练节点的负载均衡策略"", 《计算机系统应用》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113052691A (zh) * | 2021-04-30 | 2021-06-29 | 中国工商银行股份有限公司 | 一种分布式对账系统业务均衡方法,节点及集群 |
CN113411400A (zh) * | 2021-06-18 | 2021-09-17 | 中国工商银行股份有限公司 | 信息调用方法、装置、电子设备及可读存储介质 |
CN113726881A (zh) * | 2021-08-30 | 2021-11-30 | 北京百度网讯科技有限公司 | 通信连接建立方法、相关装置及计算机程序产品 |
CN113726881B (zh) * | 2021-08-30 | 2024-04-05 | 北京百度网讯科技有限公司 | 通信连接建立方法、相关装置及计算机可读存储介质 |
CN115865670A (zh) * | 2023-02-27 | 2023-03-28 | 灵长智能科技(杭州)有限公司 | 基于内核调优的web安全网关并发性能调节方法及装置 |
CN115865670B (zh) * | 2023-02-27 | 2023-06-16 | 灵长智能科技(杭州)有限公司 | 基于内核调优的web安全网关并发性能调节方法及装置 |
CN117201502A (zh) * | 2023-09-12 | 2023-12-08 | 广州云硕科技发展有限公司 | 基于人工智能的智能云服务器接入方法及系统 |
CN117201502B (zh) * | 2023-09-12 | 2024-02-20 | 广州云硕科技发展有限公司 | 基于人工智能的智能云服务器接入方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110830551B (zh) | 2023-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110830551B (zh) | 业务请求处理方法、装置及系统 | |
CN109729131B (zh) | 一种应用请求的处理方法、装置和路由器 | |
CN106850789B (zh) | 基于服务器负载检测的游戏玩家动态分配系统和方法 | |
CN105357475A (zh) | 用于视频播放的方法及装置 | |
CN110581784B (zh) | 一种节点健康检查方法、装置及设备 | |
CN116360954B (zh) | 基于云边协同技术的工业物联网管控方法和管控系统 | |
CN110661829A (zh) | 文件下载方法及装置、客户端和计算机可读存储介质 | |
CN111163072A (zh) | 机器学习模型中特征值的确定方法、装置及电子设备 | |
US20200004785A1 (en) | Automatic grouping based on user behavior | |
CN106657399B (zh) | 基于中间件实现的后台服务器选择方法及装置 | |
CN110650209A (zh) | 实现负载均衡的方法和装置 | |
CN111309946B (zh) | 一种已建立档案优化方法及装置 | |
CN111159131A (zh) | 性能优化方法、装置、设备及计算机可读存储介质 | |
CN110874310B (zh) | 一种终端行为监测方法、装置、电子设备及存储介质 | |
CN110505276B (zh) | 对象匹配方法、装置及系统、电子设备及存储介质 | |
US11288158B2 (en) | Device identification device and device identification method | |
CN106156210B (zh) | 一种确定应用标识匹配列表的方法和装置 | |
CN112231167A (zh) | 云资源监控方法、装置、设备及存储介质 | |
US10264061B2 (en) | User service access allocation method and system | |
CN110909072A (zh) | 一种数据表建立方法、装置及设备 | |
CN103796042B (zh) | 资源信息推送方法及装置 | |
CN110413607B (zh) | 一种分布式计数方法、服务器及系统 | |
CN111163237A (zh) | 呼叫业务流程控制方法和相关装置 | |
CN110705627A (zh) | 目标检测方法、目标检测系统、装置及可读存储介质 | |
CN114726849B (zh) | 文件传输方法、装置、服务器及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |