一种调整方法、电子设备及计算机存储介质与流程

文档序号:29625042发布日期:2022-04-13 14:13阅读:88来源:国知局
一种调整方法、电子设备及计算机存储介质与流程

1.本技术涉及电子设备中内容分发网络(content delivery network,cdn)流量的均衡技术,尤其涉及一种调整方法、电子设备及计算机存储介质。


背景技术:

2.目前,对于流量的调度主要依赖于设置,例如,可以采用分时段设定应用程序的升级比例阈值,通过该升级比例阈值来限流,具体来说,在流量半价区(例如,1点-9点)设定较高的阈值,允许更多的应用程序静默升级,而在其他时段设定较低的升级比例阈值,显示应用程序的升级数量,以此来平衡流量。
3.然而,上述配置方式是根据经验总结而来的,并不能有效地实现对流量的均衡;由此可以看出,现有的电子设备中进行更新时存在流量不均衡的技术问题。


技术实现要素:

4.本技术实施例提供一种调整方法、电子设备及计算机存储介质,能够实现电子设备更新时的流量均衡。
5.本技术的技术方案是这样实现的:
6.第一方面,本技术实施例提供了一种调整方法,所述方法应用于电子设备中,包括:
7.获取所述电子设备对应的cdn流量的期望值和所述cdn流量的实际值;
8.基于自动控制算法,根据所述期望值和所述实际值,确定当前调整系数;
9.根据所述当前调整系数,对所述电子设备对应的目标电子设备中可静默更新对象的数量进行调整,得到所述目标电子设备调整后的可静默更新对象的数量。
10.第二方面,本技术实施例提供一种电子设备,包括:
11.获取模块,用于获取所述电子设备对应的cdn流量的期望值和所述cdn流量的实际值;
12.确定模块,用于基于自动控制算法,根据所述期望值和所述实际值,确定当前调整系数;
13.调整模块,用于根据所述当前调整系数,对所述电子设备对应的目标电子设备中可静默更新对象的数量进行调整,得到所述目标电子设备调整后的可静默更新对象的数量。
14.第三方面,本技术实施例提供一种电子设备,包括:处理器以及存储有所述处理器可执行指令的存储介质;所述存储介质通过通信总线依赖所述处理器执行操作,当所述指令被所述处理器执行时,执行上述一个或多个实施例所述的调整方法。
15.第四方面,本技术实施例提供了一种计算机存储介质,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行上述一个或多个实施例所述调整方法。
16.本技术实施例提供了一种调整方法、电子设备及计算机存储介质,包括:获取电子设备对应的cdn流量的期望值和cdn流量的实际值,基于自动控制算法,根据期望值和实际值,确定当前调整系数,根据当前调整系数,对电子设备对应的目标电子设备中可静默更新对象的数量进行调整,得到目标电子设备调整后可静默更新对象的数量,也就是说,本技术实施例中,通过自动控制算法,根据电子设备对应的cdn流量的期望值和cdn流量的实际值可以确定出当前调整系数,再利用当前调整系数对目标电子设备中可静默更新对象的数量进行调整,如此,再采用调整后的可静默更新对象的数量进行静默更新,使得cdn流量的实际值接近于cdn流量的期望值,进而使得电子设备所产生的cdn流量控制在一定范围内,从而实现了电子设备在更新时的流量均衡。
附图说明
17.图1为本技术实施例提供的一种可选的调整方法的流程示意图;
18.图2为相关技术中cdn流量的趋势图;
19.图3为本技术实施例提供的一种可选的调整方法的实例的流程示意图;
20.图4为本技术实施例提供的一种可选的电子设备的结构示意图;
21.图5为本技术实施例提供的另一种可选的电子设备的结构示意图。
具体实施方式
22.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
23.本技术实施例提供了一种调整方法,该方法应用于电子设备中,图1为本技术实施例提供的一种可选的调整方法的流程示意图,如图1所示,该调整方法可以包括:
24.s101:获取电子设备对应的cdn流量的期望值和cdn流量的实际值;
25.在相关技术中,互联网有很多业务都用到cdn做访问加速,这部分的整体流量很高,而互联网各个业务的峰值时间是不确定的,所以叠加后出现波峰与波谷,导致cdn流量出现不均衡。
26.为了实现流量均衡,可以预先进行配置,以软件商店为例,主要采用分时段设定应用程序(application,app)更新比例阈值来限流的方式,在流量半价区设定较高的阈值,允许更多的app静默更新,在其他时段,设定较低的阈值,限制app静默更新的数量。
27.然而,当前一天有安装量非常大的app上架时,可以预见在之后的一两天之内,该app更新将产生巨大的流量,图2为相关技术中cdn流量的趋势图,如图2所示,横轴为时间,纵轴为cdn流量,实线为cdn流量的理论趋势,虚线为cdn流量的实际趋势,显然,cdn流量的理论趋势与cdn流量的实际趋势相去甚远,如此,采用上述配置方式并不能实现cdn流量的均衡。
28.为了实现cdn流量的均衡,本技术实施例提供的一种调整方法,用于调整可静默更新对象的数量,也就是说,对可静默更新对象的控制来实现cdn流量的均衡。
29.具体来说,电子设备获取本地所采用的cdn访问加速业务中对应的cdn流量的期望值和cdn流量的实际值,其中,上述期望值可以为预先计算好存储至电子设备中的值,也可以为实时计算的值,这里,本技术实施例对此不作具体限定。
30.其中,上述实际值为通过cdn厂商所查询到的该电子设备的接口对应的cdn流量的实时值,如此得到cdn流量的期望值和cdn流量的实际值,进而实现对可静默更新对象的数量的控制。
31.为了获取到的电子设备对应的cdn流量的期望值,在一种可选的实施例中,获取电子设备对应的cdn流量的期望值,包括:
32.获取预设时间段内电子设备中可静默更新对象的cdn流量的预估值和cdn流量的单日流量的峰值;
33.根据cdn流量的预估值和cdn流量的单日流量的峰值,确定出cdn流量的期望值。
34.可选的,电子设备先获取预设时间段内电子设备中可静默更新对象的cdn流量的预估值,以软件商店为例,软件商店对应的服务器先获取预设时间段内可静默更新的app的cdn流量的预估值,在实际应用中,预设时间段一般设置为10天。
35.另外,获取cdn流量的单日流量的峰值,其中,cdn流量的单日流量的峰值可以为预先存储的,也可以是实时计算出的,这里,本技术实施例对此不作具体限定。
36.在获取到cdn流量的预估值和cdn流量的单日峰值之后,再根据cdn流量的预估值和cdn流量的单日流量峰值确定cdn流量的期望值。
37.其中,为了获取到cdn流量的单日流量的峰值,在一种可选的实施例中,获取cdn流量的单日流量的峰值,包括:
38.根据获取到的cdn流量的单日费用,计算得到单日费用对应的单日流量上限值;
39.将单日流量的上限值,确定为cdn流量的单日流量的峰值。
40.可选的,可以根据电子设备所订购的cdn业务单日费用,即cdn流量的单日成本,并按照cdn流量的计费方式计算出单日费用对应的单日流量的上限值,并将该上限值确定为cdn流量的单日流量的峰值。
41.为了确定出预设时间段内电子设备中可静默更新对象的cdn流量的预估值,在一种可选的实施例中,获取预设时间段内电子设备中可静默更新对象的cdn流量的预估值,包括:
42.确定出可静默更新对象中每个对象的cdn流量的预估值;
43.将每个对象的cdn流量的预估值求和,得到可静默更新对象的cdn流量的预估值。
44.可选的,确定出可静默更新对象中每个对象的cdn流量的预估值之后,将每个对象的cdn流量的预估值之和作为可静默更新对象的cdn流量的预估值,以电子设备为软件商店的服务器为例来说,可静默更新对象为可静默更新的app,可以确定出每个app的cdn流量的预估值,再将每个app的cdn流量的预估值求和得到可静默更新的app的cdn流量的预估值。
45.另外,为了确定出每个对象的cdn流量的预估值,在一种可选的实施例中,确定出可静默更新对象中每个对象的cdn流量的预估值,包括:
46.获取每个对象的安装包大小,每个对象对应的待更新电子设备的数量和每个对象推出后预设天数后已更新电子设备的比例的预估值;
47.根据每个对象的安装包大小,每个对象对应的待更新电子设备的数量和每个对象上架预设天数后已更新电子设备的比例预估值,调用预设的cdn流量的预估公式,计算出每个对象的cdn流量的预估值。
48.也就是说,针对每个对象获取安装包大小,获取每个对象对应的待更新电子设备
的数量,以及获取每个对象上架预设天数后已更新电子设备的比例的预估值,还是以软件商店为例,针对可静默更新的app中的每个app来说,获取每个app的安装包大小,例如,45mb,每个app对应的待更新电子设备的数量,例如,针对某个app还有1000万的用户未更新,每个app上架预设天数后已更新电子设备的比例的预估值,例如,针对某个app,上述第3天后预估已更新电子设备的比例的预估值为25%。
49.在获取到的上述每个对象的值之后,根据每个对象的值,调用预设的cdn流量的预估公式,计算得到每个对象的cdn流量的预估值。
50.其中,上述cdn流量的预估公式如下所示:
51.t`
p
=s
app
·napp
·ri
ꢀꢀꢀ
(1)
52.其中,t`
p
表示每个对象的cdn流量的预估值,s
app
表示每个对象的安装包大小,ri表示每个对象在推出第i天后已更新电子设备的比例预估值。
53.在确定出cdn流量的预估值和cdn流量的单日流量的峰值之后,为了确定出cdn流量的期望值,在一种可选的实施例中,根据cdn流量的预估值和cdn流量的单日流量的峰值,确定出cdn流量的期望值,包括:
54.利用预设的修正参数,对cdn流量的预估值与cdn流量的单日流量的峰值的差值进行修正,得到修正后的差值;
55.将修正后的差值与cdn流量的单日流量的峰值之和,确定为cdn流量的期望值。
56.可选的,在电子设备中设置有修正参数,用于对cdn流量的预估值与cdn流量的单日流量的差值进行修正,示例性的,将cdn流量的预估值与cdn流量的单日流量的差值确定出之后,将该差值与修正参数的乘积,确定为修正后的差值。
57.再将修正后的差值与cdn流量的单日流量的峰值之和,确定为cdn流量的期望值,如此,便确定出cdn流量的期望值。
58.s102:基于自动控制算法,根据期望值和实际值,确定当前调整系数;
59.通过上述s101,获取到cdn流量的期望值和cdn流量的实际值之后,在s102中,采用自动控制算法,根据期望值和实际值来确定出当前调整系数。其中,上述自动控制算法可以包括比例积分微分(proportion integral derivative,pid)算法,神经网络控制算法,机器学习算法等等,这里,本技术实施例对此不作具体限定。
60.为了确定出当前调整系数,在一种可选的实施例中,s102可以包括:
61.基于自动控制算法,根据期望值和实际值计算得到当前比例增量;
62.将当前调整系数更新为当前比例增量与当前调整系数之和。
63.具体来说,可以先基于自动控制算法,根据期望值和实际值计算得到当前比例增量,在得到当前比例增量之后,将获取到的当前调整系数与当前比例增量的和值,作为当前调整系数,并依据当前调整系数来对目标电子设备中可静默更新对象的数量进行调整。
64.进一步地,为了确定出当前比例增量,在一种可选的实施例中,基于自动控制算法,根据期望值和实际值计算得到当前比例增量,包括:
65.采用pid算法,根据期望值和实际值计算得到当前比例增量。
66.也就是说,上述自动控制算法采用pid算法,将期望值和实际值输入至pid算法中,然后得到输出值,该输出值即为当前比例增量。
67.s103:根据当前调整系数,对电子设备对应的目标电子设备中可静默更新对象的
数量进行调整,得到目标电子设备调整后的可静默更新对象的数量。
68.通过上述s101和s102之后,在确定出的当前调整系数,对电子设备对应的目标电子设备中可静默更新对象的数量进行调整,还是以软件商店为例,在确定出当前调整系数之后,确定出电子设备对应的每个目标电子设备中可静默更新的app的数量,然后利用当前调整系数对每个目标电子设备中可静默更新app的数量进行调整,得到每个目标电子设备调整后的可静默更新的app的数量。
69.为了得到目标电子设备调整后的可静默更新对象的数量,在一种可选的实施例中,s103可以包括:
70.将当前调整系数与目标电子设备中可静默更新对象的数量的乘积,确定为目标电子设备调整后的可静默更新对象的数量。
71.可选的,将当前调整系数乘以每个目标电子设备中可静默更新对象的数量,得到的乘积即为每个目标电子设备调整后的可静默更新对象的数量。
72.最后,为了实现对cdn流量的均衡,在一种可选的实施例中,上述方法还可以包括:
73.将调整后的可静默更新对象的数量发送至目标电子设备;
74.其中,调整后的可静默更新对象的数量用于目标电子设备执行静默更新。
75.在确定出每个目标电子设备调整后的可静默更新对象的数量之后,电子设备利用调整后的可静默更新对象的数量对每个目标电子设备执行静默更新,具体来说,将调整后可静默更新对象的数量发送至目标电子设备或者客户端,目标电子设备根据接收到的调整后可静默更新对象的数量进行静默更新,如此,基于自动控制算法,根据期望值和实际值所确定出的当前调整系数对每个目标电子设备中可静默更新对象的数量进行调整,即,通过控制静默更新的流量来控制cdn流量的均衡。
76.需要说明的是,上述可静默更新对象可以为app,还可以为操作系统等更新对象,这里,本技术实施例对此不作具体限定。
77.下面举实例对上述一个或多个实施例中所述的调整方法进行描述。
78.以软件商店为例,该方法应用于软件商店对应的服务器中,该服务器可以包括:cdn流量预估模块和cdn流量调度模块。其中,对于下载流量的自动调整主要依赖于对静默更新流量的调整,静默更新的流量可以通过调整允许用户更新的app数量来控制,采用pid算法动态调整可更新app数量阈值,使得cdn流量实际值不断逼近期望值。
79.图3为本技术实施例提供的一种可选的调整方法的实例的流程示意图,如图3所示,该调整方法可以包括:
80.s301:cdn流量预估模块根据每月cdn成本预算计算单日成本,并换算为单日流量上限;
81.其中,单日流量上限用tm表示,其中,根据每月cdn成本预算,将成本换算为单日流量上限。
82.s302:cdn流量预估模块根据近期app上架app信息,及更新进度确定次日预估流量;
83.s303:cdn流量预估模块根据次日预估流量和单日流量上限,得到期望值;
84.具体来说,根据近期上架的每个app的安装包大小、每个app对应的待更新用户的数量以及每个app对应的已更新用户的比例预估值,采用下述公式(2)得到次日预估流量:
[0085][0086]
其中,t
p
表示次日预估流量,s
app
表示app的安装包大小,n
app
表示app对应点的待更新用户的数量,ri表示app上架i天后对应的已更新用户的比例预估值,n表示全部可更新app的个数,例如,取上架10天内的app个数,因为10天后app已基本完成更新,对流量影响可忽略。
[0087]
利用下述公式(3)计算得到期望值:
[0088]
tm=+α
·
(t
p-tm)
ꢀꢀꢀ
(3)
[0089]
其中,α为预设的修正参数,例如,α=0.5。
[0090]
s304:cdn流量调度模块实时查询cdn厂商的流量数据,得到实际值;
[0091]
具体地,通过cdn厂商接口查询cdn实时流量,即为实际值。
[0092]
s305:cdn流量调度模块根据实际值和期望值,得到当前调整系数;
[0093]
具体来说,将实际值和期望值输入至下述公式(4)可以得到当前比例增量:
[0094][0095]
其中,k
p
表示比例增益,是调适参数,ki表示积分增益,也是调适参数,kd表示微分增益,也是调适参数,e表示误差,为期望值与实际值的差值。
[0096]
在得到δr之后,将当前调整系数r与δr的和值确定为当前调整系数;其中当前调整系数的初始值为0。
[0097]
s306:cdn流量调度模块根据当前调整系数,计算允许用户更新的app数量;
[0098]
具体来说,计算允许一个用户更新的app数量的公式如下:
[0099]
n=n
·
(r+δr)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0100]
其中,n为服务器对应的用户可静默更新的app数量,n为经过调整后服务器允许用户更新的app数量。
[0101]
s307:cdn流量调度模块将允许用户更新的app数量发送至用户对应的客户端;
[0102]
s308:客户端根据允许用户更新的app数量进行静默更新。
[0103]
也就是说,实时查询cdn厂商的流量数据,将实际流量与cdn流量期望值对比,计算出期望值与实际值之间的差值,采用pid算法,根据差值的大小动态的调整比例增量,实际流量超出期望值越多,允许静默更新的app数越少。通过控制静默更新的流量来控制cdn总流量,使其更接近期望值,达到cdn成本的最小化。采用自动控制算法,使得流量控制更加精准及时。
[0104]
通过上述实例,根据cdn流量的期望值与实际值动态的调整可静默更新的app的数量,可以更加精确地调控cdn流量大小,最终可实现cdn带宽利用率提升至85%以上,cdn流量成本降低20%。
[0105]
本技术实施例提供了一种调整方法,包括:获取电子设备对应的cdn流量的期望值和cdn流量的实际值,基于自动控制算法,根据期望值和实际值,确定当前调整系数,根据当前调整系数,对电子设备对应的目标电子设备中可静默更新对象的数量进行调整,得到目标电子设备调整后可静默更新对象的数量,也就是说,本技术实施例中,通过自动控制算法,根据电子设备对应的cdn流量的期望值和cdn流量的实际值可以确定出当前调整系数,再利用当前调整系数对目标电子设备中可静默更新对象的数量进行调整,如此,再采用调
整后的可静默更新对象的数量进行静默更新,使得cdn流量的实际值接近于cdn流量的期望值,进而使得电子设备所产生的cdn流量控制在一定范围内,从而实现了电子设备在更新时的流量均衡。
[0106]
基于同一发明构思,本技术实施例提供一种电子设备,图4为本技术实施例提供的一种可选的电子设备的结构示意图,如图4所示,该电子设备包括:获取模块41、确定模块42和调整模块43;其中,
[0107]
获取模块41,用于获取电子设备对应的cdn流量的期望值和cdn流量的实际值;
[0108]
确定模块42,用于基于自动控制算法,根据期望值和所述实际值,确定当前调整系数;
[0109]
调整模块43,用于根据当前调整系数,对电子设备对应的目标电子设备中可静默更新对象的数量进行调整,得到目标电子设备调整后的可静默更新对象的数量。
[0110]
在一种可选的实施例中,获取模块41获取电子设备对应的cdn流量的期望值中,包括:
[0111]
获取预设时间段内电子设备中可静默更新对象的cdn流量的预估值和cdn流量的单日流量的峰值;
[0112]
根据cdn流量的预估值和cdn流量的单日流量的峰值,确定出cdn流量的期望值。
[0113]
在一种可选的实施例中,获取模块41获取cdn流量的单日流量的峰值中,包括:
[0114]
根据获取到的cdn流量的单日费用,计算得到单日费用对应的单日流量上限值;
[0115]
将单日流量的上限值,确定为cdn流量的单日流量的峰值。
[0116]
在一种可选的实施例中,获取模块41获取预设时间段内电子设备中可静默更新对象的cdn流量的预估值,包括:
[0117]
确定出可静默更新对象中每个对象的cdn流量的预估值;
[0118]
将每个对象的cdn流量的预估值求和,得到可静默更新对象的cdn流量的预估值。
[0119]
在一种可选的实施例中,获取模块41确定出可静默更新对象中每个对象的cdn流量的预估值,包括:
[0120]
获取每个对象的安装包大小,每个对象对应的待更新电子设备的数量和每个对象推出预设天数后已更新电子设备的比例的预估值;
[0121]
根据每个对象的安装包大小,每个对象对应的待更新电子设备的数量和每个对象上架预设天数后已更新电子设备的比例预估值,调用预设的cdn流量的预估公式,计算出每个对象的cdn流量的预估值。
[0122]
在一种可选的实施例中,获取模块41根据cdn流量的预估值和cdn流量的单日流量的峰值,确定出cdn流量的期望值中,包括:
[0123]
利用预设的修正参数,对cdn流量的预估值与cdn流量的单日流量的峰值的差值进行修正,得到修正后的差值;
[0124]
将修正后的差值与cdn流量的单日流量的峰值之和,确定为cdn流量的期望值。
[0125]
在一种可选的实施例中,确定模块42,具体用于:
[0126]
基于自动控制算法,根据期望值和实际值计算得到当前比例增量;
[0127]
将当前调整系数更新为当前比例增量与当前调整系数之和。
[0128]
在一种可选的实施例中,确定模块42基于自动控制算法,根据期望值和实际值计
算得到当前比例增量中,包括:
[0129]
采用pid算法,根据期望值和实际值计算得到当前比例增量。
[0130]
在一种可选的实施例中,调整模块43,具体用于:
[0131]
将当前调整系数与目标电子设备中可静默更新对象的数量的乘积,确定为目标电子设备调整后的可静默更新对象的数量。
[0132]
在一种可选的实施例中,该电子设备,还用于:
[0133]
将调整后的可静默更新对象的数量发送至目标电子设备;
[0134]
其中,调整后的可静默更新对象的数量用于目标电子设备执行静默更新。
[0135]
图5为本技术实施例提供的另一种可选的电子设备的结构示意图,如图5所示,本技术实施例提供一种电子设备500,包括:处理器51以及存储有所述处理器可执行指令的存储介质52;所述存储介质52通过通信总线53依赖所述处理器51执行操作,当所述指令被所述处理器执行时,执行上述一个或多个实施例中处理器侧执行的所述的调整方法。
[0136]
需要说明的是,实际应用时,终端中的各个组件通过通信总线53耦合在一起。可理解,通信总线53用于实现这些组件之间的连接通信。通信总线53除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为通信总线53。
[0137]
本技术实施例提供了一种计算机存储介质,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行上述一个或多个实施例所述的调整方法。
[0138]
其中,计算机可读存储介质可以是磁性随机存取存储器(ferromagnetic random access memory,fram)、只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read-only memory,eprom)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(compact disc read-only memory,cd-rom)等存储器。
[0139]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0140]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0141]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0142]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0143]
以上所述,仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1