流量预测方法、装置、存储介质及电子设备制造方法及图纸

技术编号:38333973 阅读:12 留言:0更新日期:2023-08-02 09:14
本公开涉及一种流量预测方法、装置、存储介质及电子设备,其中,流量预测方法包括:确定微服务包括的多个服务中的入口服务将产生的第一流量;根据所述第一流量以及预先构建的多元线性回归流量预测模型,确定除所述入口服务以外的其他每一服务将产生的预测流量。本公开的目的是提供一种流量预测方法、装置、存储介质及电子设备,通过将服务调用拓扑结构图中的所有服务当作一个整体来进行流量预测,以解决相关技术中流量预测结果不准确,以及无法对环形拓扑结构中的服务进行流量预测的技术问题。形拓扑结构中的服务进行流量预测的技术问题。形拓扑结构中的服务进行流量预测的技术问题。

【技术实现步骤摘要】
流量预测方法、装置、存储介质及电子设备


[0001]本公开涉及互联网
,具体地,涉及一种流量预测方法、装置、存储介质及电子设备。

技术介绍

[0002]相关技术在预测服务的流量时,是基于机器学习算法对入口服务的直接下游服务进行流量预测,然后再根据入口服务的直接下游服务预测结果,预测该直接下游服务的直接下游服务流量。依次类推,逐级预测出整个服务拓扑结构内所有服务的流量。
[0003]随着服务数量的增加以及服务拓扑结构的改变,服务之间的调用关系逐渐形成了环型结构,即:某个服务的直接下游服务有可能成为该服务的直接上游服务,因而再继续使用上述方式进行逐级推导时,会导致流量预测陷入死循环,无法预测出服务的流量。

技术实现思路

[0004]本公开的目的是提供一种流量预测方法、装置、存储介质及电子设备,以解决相关技术中无法对环形拓扑结构中的服务进行流量预测的技术问题。
[0005]本公开第一方面提供了一种流量预测方法,包括:
[0006]确定同一历史业务下,微服务包括的多个服务中的入口服务产生的第一历史流量,以及所述多个服务中除所述入口服务以外的其他每个服务分别产生的第二历史流量;
[0007]将所述其他每个服务分别作为目标服务,执行以下操作:根据预设计算式,以所述其他每个服务对应的所述第二历史流量,以及所述第一历史流量为已知量,计算与所述目标服务相关的计算式系数,所述计算式系数包括常数,以及所述目标服务的直接上游服务与所述目标服务之间的相关系数;其中,所述目标服务的非直接上游服务与所述目标服务之间的相关系数默认为零;
[0008]在得到所述其他每个服务分别对应的计算式系数后,构建多元线性回归流量预测模型,所述多元线性回归流量预测模型用于在已知入口服务的流量的情况下,计算所述多个服务中的其他服务的预测流量。
[0009]可选地,所述多元线性回归流量预测模型的表达式为第一矩阵与所述多个服务的预测流量组成的矩阵相乘,得到第二矩阵,所述第一矩阵由针对每一所述目标服务器,所述其他每个服务与所述目标服务之间的相关系数组成,所述第二矩阵中的一个元素对应一个目标服务,且该元素为入口服务的流量与所述目标服务对应的常数、以及所述入口服务与所述目标服务之间的相关系数的计算式。
[0010]可选地,所述预设计算式为:
[0011][0012]x
k
为作为所述目标服务的第k个服务的第二历史流量,i不等于0的情况下,x
i
为除所述目标服务以及所述入口服务以外的其他服务的第二历史流量,i等于0的情况下,x0表征入口服务的第一流量,n为除所述入口服务以外的其他服务的数量,b
k
为所述常数,a
k,i
表示第i个服务与所述目标服务之间的相关系数。
[0013]可选地,所述多元线性回归流量预测模型的表达式为:
[0014]AX=B
[0015]A为所述第一矩阵,B为所述第二矩阵,X为所述多个服务的预测流量组成的矩阵,所述第二矩阵中的第i个元素的计算式为:a
i,0
*x0+b
i

[0016]可选地,每个所述服务嵌入有分布式链路追踪系统,所述分布式链路追踪系统用于获取对应服务的调用日志,所述方法还包括:
[0017]根据所述调用日志,获取所述多个服务之间的调用关系,并根据所述调用关系确定服务调用拓扑结构图;
[0018]针对每一所述目标服务,根据所述服务调用拓扑结构图确定所述目标服务的直接上游服务。
[0019]本公开第二方面提供了一种流量预测方法,包括:
[0020]确定微服务包括的多个服务中的入口服务将产生的第一流量;
[0021]根据所述第一流量以及预先构建的多元线性回归流量预测模型,确定除所述入口服务以外的其他每一服务将产生的预测流量,其中所述多元线性回归流量预测模型是根据第一方面中任一项所述的方法构建的。
[0022]可选地,针对每一服务,根据对应的所述预测流量,通过压力测试工具对所述服务进行性能测试,得到性能测试指标;
[0023]在所述性能测试指标不符合预设的指标要求的情况下,对所述服务进行优化。
[0024]可选地,对所述服务进行优化包括以下至少一者:
[0025]设定查询替换规则,所述查询替换规则用于以不相干子查询替代输入的相干子查询;
[0026]增加数据的查询索引;
[0027]使用本地内存缓存或分布式缓存;
[0028]使用多线程或线程池调用获取不阻塞程序流程的API的结果。
[0029]本公开第三方面提供了一种流量预测装置,所述装置包括:
[0030]第一获取模块,用于确定同一历史业务下,微服务包括的多个服务中的入口服务产生的第一历史流量,以及所述多个服务中除所述入口服务以外的其他每个服务分别产生的第二历史流量;
[0031]计算模块,用于将所述其他每个服务分别作为目标服务,执行以下操作:根据预设计算式,以所述其他每个服务对应的所述第二历史流量,以及所述第一历史流量为已知量,计算与所述目标服务相关的计算式系数,所述计算式系数包括常数,以及所述目标服务的直接上游服务与所述目标服务之间的相关系数;其中,所述目标服务的非直接上游服务与所述目标服务之间的相关系数默认为零;
[0032]构建模块,用于在得到所述其他每个服务分别对应的计算式系数后,构建多元线性回归流量预测模型,所述多元线性回归流量预测模型用于在已知入口服务的流量的情况
是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0052]需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0053]首先,对本公开的应用场景进行说明。在大型促销或秒杀活动等突发大流量的冲击下,很容易造成服务的响应速度变慢,甚至系统宕机。为了克服上述缺陷,在突发大流量之前,可以先对服务的流量进行预测,然后再根据预测结果对服务进行适当的优化和扩容,从而使得服务在突发大流量时也能够正常响应,不影响用户体验。
[0054]然而相关技术在预测服务的流量时,是基于机器学习算法对入口服务的直接下游服务进行流量预测,然后再根据入口服务的直接下游服务预测结果,预测该直接下游服务的直接下游服务流量,依次类推,逐级预测出整个服务拓扑结构内所有服务的流量。即:先对入口服务的流量进行预估,得到入口服务的预估流量;其次根据预估流量和入口服务的直接下游服务的历史流量数据,使用机器学习算法(如:简单线性回归、多元线性回归)对该直接下游服务进行流量预测,以得到该直接下游服务的预测流量;然后再根据预测流量和该直接下游服务的直接下游服务的历史流量数据,使用机器学本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种流量预测方法,其特征在于,包括:确定同一历史业务下,微服务包括的多个服务中的入口服务产生的第一历史流量,以及所述多个服务中除所述入口服务以外的其他每个服务分别产生的第二历史流量;将所述其他每个服务分别作为目标服务,执行以下操作:根据预设计算式,以所述其他每个服务对应的所述第二历史流量,以及所述第一历史流量为已知量,计算与所述目标服务相关的计算式系数,所述计算式系数包括常数,以及所述目标服务的直接上游服务与所述目标服务之间的相关系数;其中,所述目标服务的非直接上游服务与所述目标服务之间的相关系数默认为零;在得到所述其他每个服务分别对应的计算式系数后,构建多元线性回归流量预测模型,所述多元线性回归流量预测模型用于在已知入口服务的流量的情况下,计算所述多个服务中的其他服务的预测流量。2.根据权利要求1所述的方法,其特征在于,所述多元线性回归流量预测模型的表达式为第一矩阵与所述多个服务的预测流量组成的矩阵相乘,得到第二矩阵,所述第一矩阵由针对每一所述目标服务器,所述其他每个服务与所述目标服务之间的相关系数组成,所述第二矩阵中的一个元素对应一个目标服务,且该元素为入口服务的流量与所述目标服务对应的常数、以及所述入口服务与所述目标服务之间的相关系数的计算式。3.根据权利要求2所述的方法,其特征在于,所述预设计算式为:x
k
为作为所述目标服务的第k个服务的第二历史流量,i不等于0的情况下,x
i
为除所述目标服务以及所述入口服务以外的其他服务的第二历史流量,i等于0的情况下,x0表征入口服务的第一流量,n为除所述入口服务以外的其他服务的数量,b
k
为所述常数,a
k,i
表示第i个服务与所述目标服务之间的相关系数。4.根据权利要求3所述的方法,其特征在于,所述多元线性回归流量预测模型的表达式为:AX=BA为所述第一矩阵,B为所述第二矩阵,X为所述多个服务的预测流量组成的矩阵,所述第二矩阵中的第i个元素的计算式为:a
i,0
*0+
i
。5.根据权利要求1

4中任一项所述的方法,其特征在于,每个所述服务嵌入有分布式链路追踪系统,所述分布式链路追踪系统用于获取对应服务的调用日志,所述方法还包括:根据所述调用日志,获取所述多个服务之间的调用关系,并根据所述调用关系确定服务调用拓扑结构图;针对每一所述目标服务,根据所述服务调用拓扑结构图确定所述目标服务的直接上游服务。6.一种流量预测方法,...

【专利技术属性】
技术研发人员:蒲彩琳
申请(专利权)人:北京鼎事兴教育咨询有限公司
类型:发明
国别省市:

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

1