基于时间序列模型的业务流量切流方法及装置与流程

文档序号:28932668发布日期:2022-02-16 15:33阅读:89来源:国知局
基于时间序列模型的业务流量切流方法及装置与流程

1.本发明涉及信息系统运维技术领域,特别涉及金融技术领域,尤其涉及一种基于时间序列模型的业务流量切流方法及装置。


背景技术:

2.业务流量的大小和业务处理的服务器集群的运行状态息息相关,如果业务流量太大,超过服务器集群业务运行环境所能承载的负荷,容易出现业务故障,导致业务失败。目前生产上主要是通过设置业务流量阈值来限制业务流量,阈值通过交易压测从而能获取交易环境所能承载的最大交易量,然后在该最大交易量的基础上设置90%的比例作为切流触发条件,或者通过通用大数据、人工智能算法,根据历史监控数据动态设置当前切流阈值。这种通过生产压测的方式来预估切流值,需要靠人为的方式去操作,而且为了防止交易环境的变化,或者交易本身的需求优化导致切流值变化,往往需要经常性的压测,因此该方式费时费力,效率相对比较低下。而通常的大数据、人工智能算法无法做到随着交易环境的变化(服务器老化、性能变低及交易优化)自动进行切流值调整,也无法预测非周期性的突发交易并发变化,切流调整方式和策略相对单一。


技术实现要素:

3.本发明的一个目的在于提供一种基于时间序列模型的业务流量切流方法,通过预设时间序列模型对业务处理的服务器集群的切流指标变化进行预测得到切流指标变化趋势,降低了性能测试的成本,提高了系统切流指标变化趋势预测的准确性和服务器集群业务处理的稳定性。本发明的另一个目的在于提供一种基于时间序列模型的业务流量切流装置。本发明的再一个目的在于提供一种计算机设备。本发明的还一个目的在于提供一种可读介质。
4.为了达到以上目的,本发明一方面公开了一种基于时间序列模型的业务流量切流方法,包括:
5.接收运维人员终端传输的切流请求;
6.获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势;
7.根据所述切流指标变化趋势对业务流量进行切流控制。
8.优选的,进一步包括在获取处理业务的服务器集群信息,之前:
9.根据所述切流请求确定是否存在对应的切流指标变化趋势,若存在,根据所述切流指标变化趋势对业务流量进行切流控制;
10.若否,执行获取处理业务的服务器集群信息。
11.优选的,所述切流请求包括指定服务器集群;
12.所述获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群
信息获取所述服务器集群中所述切流指标对应的指标数据具体包括:
13.根据所述切流请求确定所述指定服务器集群;
14.获取所述指定服务器集群的服务器集群信息,所述服务器集群信息包括集群节点和交易信息;
15.根据所述服务器集群信息获取所述切流指标对应的指标数据。
16.优选的,所述切流请求包括指定服务器集群;
17.所述方法进一步包括在根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,之前:
18.根据所述切流请求确定所述指定服务器集群;
19.根据所述指定服务器集群获取对应的指标配置文件;
20.解析所述指标配置文件得到所述切流指标。
21.优选的,所述通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势具体包括:
22.对所述指标数据进行预处理;
23.通过预设时间序列模型对预处理后的指标数据进行预测得到切流指标变化趋势。
24.优选的,所述根据所述切流指标变化趋势对业务流量进行切流控制具体包括:
25.根据所述切流指标变化趋势以及业务流量与所述切流指标的拟合曲线得到业务流量变化趋势;
26.若当前业务流量大于所述业务流量变化趋势中对应的业务流量,将至少部分的所述业务流量切换至其他服务器集群。
27.优选的,进一步包括预先确定所述拟合曲线的步骤:
28.根据多项式拟合算法对预处理后的历史指标数据进行拟合得到业务流量与各所述切流指标对应的拟合曲线。
29.优选的,根据所述切流指标变化趋势以及业务流量与所述切流指标的拟合曲线得到业务流量变化趋势具体包括:
30.根据所述切流指标变化趋势确定每个采样时刻的采样切流指标;
31.根据采样切流指标与所述拟合曲线确定所述采样切流指标对应的采样业务流量;
32.将所有采样时刻的采样业务流量拟合得到所述业务流量变化趋势。
33.优选的,进一步包括预先建立所述时间序列模型的步骤:
34.获取历史的预设时间段内所述切流指标的历史指标数据;
35.通过所述历史指标数据对预设的机器学习模型进行训练得到所述时间序列模型。
36.优选的,进一步包括:
37.接收所述服务器集群的监控报文;
38.解析所述监控报文得到各预设的切流指标的指标数据。
39.本发明还公开了一种基于时间序列模型的业务流量切流装置,包括切流评估模块、大数据平台、监控平台以及流量分配平台;
40.其中,切流评估模块用于接收运维人员终端传输的切流请求,获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息从大数据平台及监控平台获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所述指标数
据进行预测得到切流指标变化趋势;
41.流量分配平台用于根据所述切流指标变化趋势对业务流量进行切流控制。
42.本发明还公开了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,
43.所述处理器执行所述程序时实现如上所述方法。
44.本发明还公开了一种计算机可读介质,其上存储有计算机程序,
45.该程序被处理器执行时实现如上所述方法。
46.本发明基于时间序列模型的业务流量切流方法接收运维人员终端传输的切流请求,获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势,根据所述切流指标变化趋势对业务流量进行切流控制。由此可知,本发明通过时间序列模型和服务器集群中切流指标的指标数据对切流指标变化趋势进行预测,确定切流指标变化趋势,根据切流指标变化趋势对服务器集群进行切流控制。从而,本发明无需对服务器集群进行压测,根据切流指标的指标数据即可预测服务器集群的切流指标变化趋势,进而实现业务流量的切流管控,节省了大量的性能测试工作量,降低了服务器集群业务流量切流指标变化趋势确定的性能测试成本,提升了服务器集群切流指标变化趋势预测的准确性,进而通过业务流量切流保证服务器集群业务处理的运行稳定性,提升运维的便利性。
附图说明
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
48.图1示出本发明基于时间序列模型的业务流量切流系统具体实施例的结构图;
49.图2示出本发明基于时间序列模型的业务流量切流方法具体实施例的流程图;
50.图3示出本发明用于执行基于时间序列模型的业务流量切流方法的业务流量切流装置具体实施例的结构图;
51.图4示出图3业务流量切流装置中切流评估模块的结构图;
52.图5示出图3业务流量切流装置中大数据平台的结构图;
53.图6示出图3业务流量切流装置中监控平台的结构图;
54.图7示出图3业务流量切流装置中流量分配平台的结构图;
55.图8示出本发明基于时间序列模型的业务流量切流方法一个具体例子的流程图;
56.图9示出适于用来实现本发明实施例的计算机设备的结构示意图。
具体实施方式
57.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
58.需要说明的是,本技术公开的一种基于时间序列模型的业务流量切流方法及装置可用于人工智能技术领域,也可用于除人工智能技术领域之外的任意领域,本技术公开的一种基于时间序列模型的业务流量切流方法及装置的应用领域不做限定。
59.需要说明的是,在本发明的一个或多个实施例中,多项式拟合是指用一个多项式展开去拟合各个指标的观测点,得到观测数据的非线性关系,展开系数用最小二乘拟合确定。
60.需要说明的是,在本发明的一个或多个实施例中,prophet算法是facebook开源的一种时间序列预测模型,可以设置任何影响预测过程的参数值。
61.目前业务处理的服务器集群的切流主要靠人为压测获取切流值,根据切流值进行切流管控,这种方式费时费力,效率比较低,且无法做到随着交易环境的变化自动进行切流值调整,切流值的计算可能不准确。为解决交易业务切流靠人为压测获取效率低下以及切流值计算不准确的问题,本发明通过时间序列模型对服务器集群中切流指标的指标数据进行预测得到切流指标变化趋势,根据切流指标变化趋势对服务器集群进行切流控制。从而,本发明无需对服务器集群进行压测,根据切流指标的指标数据预测服务器集群的切流指标变化趋势,进而实现业务流量的切流管控,节省了大量的性能测试工作量,降低了服务器集群业务流量切流指标变化趋势确定的性能测试成本,提升了服务器集群切流指标变化趋势预测的准确性,进而通过业务流量切流保证服务器集群业务处理的运行稳定性,提升运维的便利性。
62.图1是本发明实施例提供的基于时间序列模型的业务流量切流系统的结构示意图,如图1所示,本发明实施例提供的基于时间序列模型的业务流量切流系统包括运维人员终端100、至少一个服务器集群200以及基于时间序列模型的业务流量切流装置300。
63.其中,运维人员终端向业务流量切流装置发出切流请求。
64.业务流量切流装置接收运维人员终端传输的切流请求;获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势;根据所述切流指标变化趋势对业务流量进行切流控制。
65.需要说明的是,本发明基于时间序列模型的业务流量切流系统中的运维人员终端可与业务流量切流装置集成在一起,即运维人员直接在业务流量切流装置提供的交互设备上操作形成切流请求。
66.下面以基于时间序列模型的业务流量切流装置作为执行主体为例,说明本发明实施例提供的基于时间序列模型的业务流量切流方法的实现过程。可理解的是,本发明实施例提供的基于时间序列模型的业务流量切流方法的执行主体包括但不限于该基于时间序列模型的业务流量切流装置。
67.根据本发明的一个方面,本实施例公开了一种基于时间序列模型的业务流量切流方法。如图2所示,本实施例中,所述方法包括:
68.s100:接收运维人员终端的切流请求。
69.s200:获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所
述指标数据进行预测得到切流指标变化趋势。
70.s300:根据所述切流指标变化趋势对业务流量进行切流控制。
71.本发明基于时间序列模型的业务流量切流方法接收运维人员终端传输的切流请求,获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势,根据所述切流指标变化趋势对业务流量进行切流控制。由此可知,本发明通过时间序列模型和服务器集群中切流指标的指标数据对切流指标变化趋势进行预测,确定切流指标变化趋势,根据切流指标变化趋势对服务器集群进行切流控制。从而,本发明无需对服务器集群进行压测,根据切流指标的指标数据即可预测服务器集群的切流指标变化趋势,进而实现业务流量的切流管控,节省了大量的性能测试工作量,降低了服务器集群业务流量切流指标变化趋势确定的性能测试成本,提升了服务器集群切流指标变化趋势预测的准确性,进而通过业务流量切流保证服务器集群业务处理的运行稳定性,提升运维的便利性。
72.具体的,如图3所示,在一个优选的实施方式中,用于执行基于时间序列模型的业务流量切流方法的业务流量切流装置可包括切流评估模块1、大数据平台2、监控平台3以及流量分配平台4。
73.其中,切流评估模块1通过网络与大数据平台2、流量分配平台4、流量控制平台5连接;大数据平台2与监控平台3、切流评估模块1连接;监控平台3与大数据平台2以及生产实际业务系统连接;流量分配平台4部署在各个服务器集群,与切流评估模块1连接。
74.切流评估模块1用于触发整个服务器集群的切流指标评估,并发起切流配置推送流程,实现切流控制。通过组装相关报文指令进行切流评估。
75.大数据平台2用于查询服务器集群的监控数据中的指标数据,并进行加工,按照预设时间序列模型评估服务器集群的未来性能表现趋势,形成切流指标变化趋势,并按照要求返回切流指标变化趋势给切流评估模块1。
76.监控平台3用于解析服务器集群报送的监控报文,收集各项切流指标数据,并将指标存储,提供其他模块、平台和服务器进行访问。
77.流量分配平台4用于接收切流指令,解析得到切流指标变化趋势,并按照切流指标变化趋势启用切流机制,实现切流功能。
78.需要说明的是,本发明的大数据平台2、监控平台3以及流量分配平台4可以是一台服务器,也可以是服务器集群,本领域技术人员可根据实际需求设置大数据平台2、监控平台3以及流量分配平台4的架构,在此不再赘述。
79.更优选的,如图4所示,切流评估模块1可包括切流评估单元11、报文发送/接收单元12、切流控制单元13以及切流配置单元14。
80.其中,切流评估单元11基于运维人员终端传输的切流请求触发切流评估指令,获取对应服务器集群的名称后,组装切流评估指令报文,并调用报文发送/接收单元12将指令发往大数据平台2。
81.报文发送/接收单元12负责将各个模块组装的报文发送至大数据平台、切流评估模块1等。
82.切流控制单元13负责将对应服务器集群的切流指标变化趋势组装为切流指令,并
调用报文发送/接收单元12发送至流量分配平台4。
83.切流配置单元14负责存储切流的相关配置信息、服务器集群信息、报文模板等。
84.如图5所示,大数据平台2可包括指令接收单元21、数据查询单元22、数据预处理单元23、指标预测单元24和指标发送单元25。
85.其中,指令接收单元21负责接收切流评估模块1发送的评估指令,并解析执行指令。
86.数据查询单元22负责按照评估指令要求,查询监控平台3的切流指标数据,并加载。
87.数据预处理单元23负责按照预设时间序列模型输入数据的要求,对查询到的切流指标数据进行预处理,形成可以通过相关算法处理的数据集。
88.指标预测单元24负责利用预设时间序列模型,就预处理后的切流指标数据对切流指标变化趋势进行预测,明确在某个时间点的业务集群性能表现。优选的,时间序列模型可通过对基于prophet算法原理形成的机器学习模型进行训练得到。
89.指标发送单元25负责将指标预测单元24得出的切流指标变化趋势发送至切流评估模块1。
90.如图6所示,监控平台3包括监控报文接收单元31、监控报文解析单元32、切流指标存储单元33和切流指标访问单元34。
91.其中,监控报文接收单元31负责接收服务器集群发送的监控报文。
92.监控报文解析单元32负责解析监控报文接收单元31收到的报文,将相关集群的cpu使用量、内存使用量、cpu使用率、内存使用率、磁盘使用率、网络超时数、i/o吞吐量等切流指标存储在切流指标存储单元33中。
93.切流指标存储单元33负责存储cpu使用量、内存使用量、cpu使用率、内存使用率、磁盘使用率、网络超时数、i/o吞吐量等切流指标。
94.切流指标访问单元34负责提供切流指标访问接口,提供某服务器集群下各ip的cpu使用量、内存使用量、cpu使用率、内存使用率、磁盘使用率、网络超时数、i/o吞吐量等切流指标。
95.如图7所示,流量分配平台4包括切流指令接收单元41、切流配置单元42和切流单元43。
96.其中,切流指令接收单元41负责接收切流评估模块1发送的切流指令,并解析出切流指标变化趋势。
97.切流配置单元42负责存储指令接收单元41接收解析出来的切流指标变化趋势。
98.切流单元43负责按照切流配置单元42中的切流指标变化趋势,根据切流指标变化趋势对相应的服务器集群进行业务流量切流管控。
99.在优选的实施方式中,切流单元43在根据所述切流指标变化趋势对业务流量进行切流控制时,根据所述切流指标变化趋势以及业务流量与所述切流指标的拟合曲线得到业务流量变化趋势,若当前业务流量大于所述业务流量变化趋势中对应的业务流量,将至少部分的所述业务流量切换至其他服务器集群。
100.更优选的,切流单元43在根据所述切流指标变化趋势以及业务流量与所述切流指标的拟合曲线得到业务流量变化趋势时,根据所述切流指标变化趋势确定每个采样时刻的
采样切流指标;根据采样切流指标与所述拟合曲线确定所述采样切流指标对应的采样业务流量;将所有采样时刻的采样业务流量拟合得到所述业务流量变化趋势。
101.其中,切流单元43可预先确定拟合曲线。具体的,可根据多项式拟合算法对预处理后的历史指标数据进行拟合得到业务流量与各所述切流指标对应的拟合曲线。具体的,可按照多项式拟合算法,就预处理后的切流指标数据进行拟合,形成如y=ax
1n1
+bx
2n2
+cx
3n3
+dx
4n4
+ex
5n5
+fx
6n6
+gx
7n7
+h的拟合曲线,其中,y表示业务流量,x1、x2、x3、x4、x5、x6和x7为切流指标,a、b、c、d、e、f、g、h、n1、n2、n3、n4、n5、n6和n7为经过多项式拟合得到的切流指标的参数。根据得到的拟合曲线可预估性能最高上限得到切流评估指标,相关指标包括cpu使用量、内存使用量、cpu使用率、内存使用率、磁盘使用率、网络超时数、i/o吞吐量。
102.切流单元43进一步可预先建立所述时间序列模型。具体的,切流单元43可获取历史的预设时间段内所述切流指标的历史指标数据;通过所述历史指标数据对预设的机器学习模型进行训练得到所述时间序列模型。
103.为了提高业务切流的执行效率,在优选的实施方式中,所述方法进一步包括在s200获取处理业务的服务器集群信息,之前:
104.s110:根据所述切流请求确定是否存在对应的切流指标变化趋势,若存在,根据所述切流指标变化趋势对业务流量进行切流控制。
105.s120:若否,执行获取处理业务的服务器集群信息。
106.具体的,切流评估模块在接收到运维人员传输的切流请求后,查询是否有指定服务器集群切流指标变化趋势。如有切流指标变化趋势,直接触发切流配置推送流程,根据切流指标变化趋势对业务的流量进行切流。如无切流指标变化趋势继续执行获取处理业务的服务器集群信息,实时确定切流指标变化趋势后对业务的流量进行切流。
107.在优选的实施方式中,所述切流请求包括指定服务器集群。
108.所述s200获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据具体包括:
109.s211:根据所述切流请求确定所述指定服务器集群。
110.s212:获取所述指定服务器集群的服务器集群信息,所述服务器集群信息包括集群节点和交易信息。
111.s213:根据所述服务器集群信息获取所述切流指标对应的指标数据。
112.可以理解的是,可以利用系统中常规配置的大数据平台和监控平台,获取服务器集群的指标数据,降低切流指标变化趋势生成的难度和成本。具体的,可组装切流评估指令的报文并将报文发送至大数据平台。大数据平台判断指令类型是否切流评估指令。如是切流评估指令,继续执行下一步。大数据平台对切流评估指令进行解析,并向查询监控平台的切流指标数据(指定服务器集群的若干切流指标,如cpu使用率等)。监控平台可向大数据平台返回一定时间范围内的切流指标数据。
113.在优选的实施方式中,所述切流请求包括指定服务器集群。
114.所述方法进一步包括在s200根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,之前:
115.s130:根据所述切流请求确定所述指定服务器集群。
116.s140:根据所述指定服务器集群获取对应的指标配置文件。
117.s150:解析所述指标配置文件得到所述切流指标。
118.具体的,配置文件可包括不同配置类型的配置文件,配置类型包括集群配置、切流配置、报文配置。集群配置文件包括集群id、集群名称、对应集群ip地址集合、对应集群交易名称,即包括具体服务器集群的名称以及对应集群中各节点ip地址。
119.切流配置文件包括切流配置id、集群名称,切流指标,即包括对应服务器集群的切流指标。切流指标存储可包括切流指标id、集群名称、ip、指标名称、指标值组成,指标名称指cpu使用量、内存使用量、cpu使用率、内存使用率、磁盘使用率、网络超时数、i/o吞吐量等指标,指标值指具体的cpu使用率等指标数值。
120.报文配置明细包括报文配置id、报文类型、集群列表、指标或策略,即包括评估类型报文,指定集群的名称的集合,以及预测的指标。指令类型报文,指定集群的名称集合,以及集群列表、切流时间和流量分配策略。
121.在优选的实施方式中,所述s200通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势具体包括:
122.s221:对所述指标数据进行预处理。
123.s222:通过预设时间序列模型对预处理后的指标数据进行预测得到切流指标变化趋势。
124.可以理解的是,为了提高拟合曲线拟合的准确性,可预先按照多项式拟合要求,对查询到的切流指标数据进行预处理,形成可以通过相关算法处理的数据集。具体的,所述预处理可包括数据清洗以及数据标准化等处理步骤,使预处理后的指标数据更符合多项式拟合的要求,提高拟合得到的拟合曲线的准确性。其中,预处理可采用现有的数据处理方法,在此不再赘述。
125.在优选的实施方式中,所述s300根据所述切流指标变化趋势对业务流量进行切流控制具体包括:
126.s310:根据所述切流指标变化趋势以及业务流量与所述切流指标的拟合曲线得到业务流量变化趋势。
127.s320:若当前业务流量大于所述业务流量变化趋势中对应的业务流量,将至少部分的所述业务流量切换至其他服务器集群。
128.可以理解的是,切流指标变化趋势表示切流指标的指标数据在未来时间段内的变化趋势,而切流指标的指标数据与业务流量之间的关系可根据预先拟合得到的拟合曲线确定。从而,根据切流指标变化趋势和拟合曲线可得到未来时间段内可承受的业务流量的变化趋势,即通过预测表示服务器集群处理性能的切流指标的指标数据变化趋势,并根据指标数据与业务流量的拟合曲线的对应关系,确定切流指标变化趋势对应的服务器集群可承受的最大业务流量的变化趋势,即业务流量变化趋势。
129.进而,当服务器集群当前业务流量大于所述业务流量变化趋势中对应的业务流量,将至少部分的所述业务流量切换至其他服务器集群。例如,系统中可设置至少一个处理业务流量的主服务器集群和至少一个从服务器集群,当业务流量大于业务流量变化趋势中对应的业务流量时,可将主服务器集群上的业务流量的至少部分转至从服务器集群,进行业务流量的分配。
130.在优选的实施方式中,所述方法进一步包括预先确定所述拟合曲线的步骤:
131.s301:根据多项式拟合算法对预处理后的历史指标数据进行拟合得到业务流量与各所述切流指标对应的拟合曲线。
132.具体的,按照多项式拟合算法,就预处理后的切流指标进行拟合,形成拟合曲线,例如,可形成y=ax
1n1
+bx
2n2
+cx
3n3
+dx
4n4
+ex
5n5
+fx
6n6
+gx
7n7
+h的拟合曲线,其中,y表示业务流量,x1、x2、x3、x4、x5、x6和x7为切流指标,a、b、c、d、e、f、g、h、n1、n2、n3、n4、n5、n6和n7为经过多项式拟合得到的切流指标的参数。根据得到的拟合曲线可预估性能最高上限得到切流指标变化趋势,相关指标包括cpu使用量、内存使用量、cpu使用率、内存使用率、磁盘使用率、网络超时数、i/o吞吐量。
133.在优选的实施方式中,s310根据所述切流指标变化趋势以及业务流量与所述切流指标的拟合曲线得到业务流量变化趋势具体包括:
134.s311:根据所述切流指标变化趋势确定每个采样时刻的采样切流指标;
135.s312:根据采样切流指标与所述拟合曲线确定所述采样切流指标对应的采样业务流量;
136.s313:将所有采样时刻的采样业务流量拟合得到所述业务流量变化趋势。
137.具体的,对于切流指标变化趋势,可根据实际要求确定采样精度,进而确定多个采样时刻,从切流指标变化趋势中确定每个采样时刻的采样切流指标,即得到未来多个采样时刻的切流指标的指标数据。对于每个采样切流指标,确定采样切流指标的指标数据,并根据拟合曲线进一步确定切流指标数据对应的业务流量为服务器集群可承受的最大业务流量,即采样业务流量。最后,将所有采样时刻的采样业务流量拟合可得到业务流量变化趋势。
138.在优选的实施方式中,所述方法进一步包括预先建立所述时间序列模型的步骤:
139.s302:获取历史的预设时间段内所述切流指标的历史指标数据;
140.s303:通过所述历史指标数据对预设的机器学习模型进行训练得到所述时间序列模型。
141.具体的,可采用机器学习原理,对切流指标历史的指标数据进行学习,将指标数据作为训练样本,对机器学习模型进行训练得到时间序列模型。从而,可根据时间序列模型在当前指标数据的基础上预测切流指标的指标数据在未来的变化趋势得到切流指标变化趋势。
142.在优选的实施方式中,所述方法进一步在包括s200根据预设的切流指标通过所述服务器集群信息获取所述服务器集群中所述切流指标对应的指标数据,之前:
143.s160:接收所述服务器集群的监控报文。
144.s170:解析所述监控报文得到各预设的切流指标的指标数据。
145.可以理解的是,现有系统中通常设置有监控平台,对服务器集群的各项运行数据进行监控,从而,可通过监控平台接收服务器集群的监控报文,从监控报文中解析得到各切流指标的指标数据。
146.在一个具体实施方式中,基于时间序列模型的业务流量切流方法包括性能容量拟合评估流程。首先运维人员发送切流请求触发切流评估单元11,检查指定服务器集群是否已经有切流指标变化趋势,如有,则直接进行切流配置推送流程,如无,则查询切流配置单元14获取集群信息,并组装切流评估报文,通过报文发送/接收单元将报文发送至大数据平
台2,大数据平台2根据指令类型向监控平台3查询切流指标数据,监控平台3通过切流指标访问单元34从切流指标存储单元33获取相关指标数据后,返回指标数据至大数据平台2,由数据预处理单元23进行预处理后,再通过指标预测单元24生成切流指标变化趋势,并返回切流评估模块1,存储至切流配置单元14中。
147.具体的,如图8所示,性能容量拟合评估流程可包括以下步骤:
148.步骤s101:运维人员指定服务器集群触发切流评估单元11,发起切流评估。
149.步骤s102:查询切流配置单元14是否有指定服务器集群切流指标变化趋势。如有指标,直接出发切流配置推送流程。如无指标继续执行下一步。
150.步骤s103:切流评估单元11向切流配置单元14获取对应服务器集群信息,包括集群节点、交易信息等。
151.步骤s104:切流评估单元11就选择的服务器集群、以及切流配置单元中相关配置信息,组装切流评估报文。
152.步骤s105:报文发送/接受单元12将切流评估单元组装好的报文发送至大数据平台2。
153.步骤s106:大数据平台2的指令接收单元21,判断指令类型是,否切流评估指令。如是切流评估指令,继续执行下一步。
154.步骤s107:大数据平台2的指令接收单元21按照切流评估指令进行解析,并向数据查询单元22发送数据请求。
155.步骤s108:数据查询单元22按照数据查询请求,向查询监控平台3的切流指标数据(指定服务器集群的若干切流指标,如cpu使用率等)
156.步骤s109:监控平台3的切流指标访问单元34,按照服务器集群范围、切流指标组成访问请求。
157.步骤s110:监控平台3的切流指标存储单元33按照访问请求,返回一定时间范围内的切流指标数据。
158.步骤s111:监控平台3的切流指标访问单元34,向大数据平台2返回切流指标数据。
159.步骤s112:监控平台3提供的切流指标数据进入大数据平台2的数据预处理单元23,并按照评估指令要求,以预设时间序列模型预处理要求对数据进行预处理。
160.步骤s113:指标预测单元24读取的数据预处理单元23处理后的数据,通过时间序列模型进行预测,生成切流指标变化趋势。
161.步骤s114:指标发送单元25将指标预测单元24生成的切流指标变化趋势发送至切流评估模块。
162.步骤s115:将大数据平台2生成的对应服务器集群切流指标变化趋势,存储至切流配置单元。
163.进一步的,基于时间序列模型的业务流量切流方法还包括切流配置推送流程:首先运维人员触发切流配置推送,通过切流控制单元13指定服务器集群设置切流指标,检查切流配置单元14是否有切流指标变化趋势,有则继续读取切流配置单元14中的切流指令报文模板,组织切流指令。通过报文发送/接收单元12将切流指令推送至流量分配平台4,流量分配平台4解析切流指令的切流指标后,通过切流单元43进行切流。
164.具体的,切流单元43基于切流指标变化趋势和预设的切流指标与业务流量的拟合
曲线可得到业务流量变化趋势,从而得到业务流量的切流预测指标,将业务流量与预测得到的切流预测指标进行比较,如业务流量小于切流预测指标,则无需控制切流,直接结束流程。如业务流量大于切流预测指标,则按照流量分配策略将至少部分业务流量切换至其他服务器集群进行处理。
165.如图8所示,切流配置推送流程:
166.步骤s201:运维人员触发切流配置推送,切流控制单元13,就指定服务器集群设置切流指标。
167.步骤s202:查询切流配置单元14是否有指定服务器集群切流指标变化趋势。
168.步骤s203:切流控制单元13读取切流配置单元14中切流报文模板配置信息、服务器集群信息。
169.步骤s204:切流控制单元13根据指定服务器集群设置切流指标变化趋势、切流报文模板,组装切流报文。
170.步骤s205:报文发送/接受单元12,将组装好的报文,发往指定服务器集群。
171.步骤s206:服务器集群各节点的切流评估模块14的切流指令接收单元41接收切流报文指令,并解析。
172.步骤s207:切流指令接收单元41将解析出的切流配置,存储至切流配置单元42中。
173.步骤s208:切流单元43以令牌桶等方式,按照切流配置进行切流。
174.本发明基于监控平台积累的监控数据,通过预设时间序列模型对整个服务器集群的交易处理上限进行评估,实现通用的切流管控流程及策略。具体的,本发明根据生产实际切流指标数据对指标数据变化趋势进行预测,合理评估生产集群交易处理上限,基于指标数据变化趋势和集群交易处理上限进行切流控制,切流控制更加合理,节省大量性能测试工作量,有助于运维效能和生产稳定运行。降低了性能测试成本,提升了系统切流指标变化趋势预测的准确性和业务系统的稳定性,可以充分利用现有监控平台、大数据平台既有能力,实现运维便利性的提升。
175.基于相同原理,本实施例还公开了一种基于时间序列模型的业务流量切流装置。所述装置包括切流评估模块、大数据平台、监控平台以及流量分配平台。
176.其中,切流评估模块用于接收运维人员终端的切流请求,获取处理业务的服务器集群信息,根据预设的切流指标通过所述服务器集群信息从大数据平台及监控平台获取所述服务器集群中所述切流指标对应的指标数据,通过预设时间序列模型对所述指标数据进行预测得到切流指标变化趋势;
177.流量分配平台用于根据所述切流指标变化趋势对业务流量进行切流控制。
178.由于该装置解决问题的原理与以上方法类似,因此本装置的实施可以参见方法的实施,在此不再赘述。
179.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
180.在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并
可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的由客户端执行的方法,或者,所述处理器执行所述程序时实现如上所述的由服务器执行的方法。
181.下面参考图9,其示出了适于用来实现本技术实施例的计算机设备600的结构示意图。
182.如图9所示,计算机设备600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram))603中的程序而执行各种适当的工作和处理。在ram603中,还存储有系统600操作所需的各种程序和数据。cpu601、rom602、以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
183.以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶反馈器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口606。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
184.特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包括用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
185.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
186.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
187.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
188.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
189.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
190.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
191.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
192.本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
193.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
194.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1