一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

接口流量控制方法、装置、电子设备及存储介质与流程

2022-05-18 12:26:12 来源:中国专利 TAG:


1.本技术涉及电子信息技术领域,具体涉及一种接口流量控制方法、装置、电子设备及存储介质。


背景技术:

2.对于多业务应用系统交互场景,系统a需把请求通过接口发送至系统b,由于b系统的负载能力有限,为了防止非预期的请求对系统压力过大而拖垮b系统,需要对接口请求进行限流,限流就是,在有限资源的情况下,每个接口单位时间内的服务能力有限,如果对接口的访问次数不加控制,会造成接口的压力过大,为了提高接口和业务应用系统的高可用,需要控制单位时间内接口的请求量。
3.现有技术中,常常采用固定阈值进行流控,不能充分利用请求接收主机的资源,某一时刻该主机的资源较空闲,可以处理大于阈值的请求,但因流控原因造成资源浪费;同理,某时刻主机资源比较紧张,只能处理小于阈值的请求,此时会增加拖垮该主机的风险,从而影响业务处理。


技术实现要素:

4.本技术实施例的目的是提供一种接口流量控制方法、装置、电子设备及存储介质,以至少解决现有接口流量超过系统负载导致拖垮主机的问题。
5.本技术的技术方案如下:
6.根据本技术实施例的第一方面,提供一种接口流量控制方法,该方法可以包括:获取请求数据,请求数据为待发送至接口的数据;将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。
7.根据本技术实施例的第二方面,提供一种接口流量控制装置,该装置可以包括:数据采集模块,用于获取请求数据,请求数据为待发送至接口的数据;预测模块,用于将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;流量控制模块,用于基于请求数量阈值,对接口进行流量控制。
8.根据本技术实施例的第三方面,提供一种电子设备,该电子设备可以包括:
9.处理器;
10.用于存储处理器可执行指令的存储器;
11.其中,处理器被配置为执行指令,以实现如第一方面的任一项实施例中所示的信息处理方法。
12.根据本技术实施例的第四方面,提供一种存储介质,当存储介质中的指令由信息处理装置或者服务器的处理器执行时,以使信息处理装置或者服务器实现以实现如第一方面的任一项实施例中所示的信息处理方法。
13.本技术的实施例提供的技术方案至少带来以下有益效果:
14.本技术实施例通过获取请求数据,请求数据为待发送至接口的数据;将请求数据
输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。通过采用模型预测的方式调整数据输入阈值,这种方式阈值流控平滑,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
15.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限值本技术。
附图说明
16.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理,并不构成对本技术的不当限定。
17.图1是根据一示例性实施例示出的接口流量控制方法流程示意图;
18.图2是根据一示例性实施例示出的接口流量智能控制结构示意图;
19.图3是根据一示例性实施例示出的模型训练过程示意图;
20.图4是根据一示例性实施例示出的不同改进模型的准确率对比图;
21.图5是根据一示例性实施例示出的流量控制模块执行过程示意图;
22.图6是根据一示例性实施例示出的预测曲线图;
23.图7是根据一示例性实施例示出的电子设备结构示意图;
24.图8是根据一示例性实施例示出的电子设备硬件结构示意图。
具体实施方式
25.为了使本领域普通人员更好地理解本技术的技术方案,下面将结合附图,对本技术实施例中的技术方案进行清楚、完整地描述。
26.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
27.图1是本技术提供的接口流量控制方法的一实施例的流程示意图。如图1所示,该接口流量控制方法,可以包括:
28.步骤100:获取请求数据,请求数据为待发送至接口的数据;
29.步骤200:将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;
30.步骤300:基于请求数量阈值,对接口进行流量控制。
31.上述实施例通过获取请求数据,请求数据为待发送至接口的数据;将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。采用模型预测的方式调整数据输入阈值,这种方式阈值流控平滑,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
32.在本技术实施例中,请求数据可以包括cpu、内存、i/o、线程数、响应时长等基础数据。
33.在本技术的实施例中,阈值预测模型是通过下述方法构建的:
34.步骤210:获取目标数据;
35.步骤210:将目标数据进行预处理,得到带有标签的综合指标数据;
36.步骤210:利用带有标签的综合指标数据对机器学习模型进行训练和测试,得到训练好的阈值预测模型。
37.在本技术的实施例中,目标数据包括:cpu使用率、内存使用率、i/o使用率、线程数和响应时长。
38.在本技术的实施例中,将目标数据进行预处理可以是对数据进行标注,运用pca降维技术对数据集进行降维处理。
39.在本技术的实施例中,将目标数据进行预处理,得到带有标签的综合指标数据,包括:
40.将目标数据进行标注处理,得到带标签数据;
41.将带标注数据进行降维处理,得到带有标签的综合指标数据。
42.在本技术的实施例中,将带标注数据进行降维处理,得到带有标签的综合指标数据,包括:
43.利用主成分分析技术将带标注数据进行降维处理,得到带有标签的综合指标数据
44.在本技术的实施例中,机器学习模型包括:注意力机制函数;
45.利用注意力机制函数对带有标签的综合指标数据生成注意力分配系数。
46.在本技术的实施例中,方法还包括下述至少之一:
47.利用前向传播算法的更新阈值预测模型内部状态;
48.利用反向传播算法训练更新阈值预测模型权重与偏差;
49.利用adam优化算法最小化损失函数。
50.在本技术的实施例,步骤300:基于请求数量阈值,对接口进行流量控制具体可以是通过logstash技术采集实时数据,经kafka传至阈值预测模型中,预测模型通过加载模型权重文件,对传入的数据进行预测,并输出结果。根据输出的预测结果,结合当前接口请求数量,对流量进行控制。
51.基于同一发明构思,本技术实施例还提供了一种接口流量控制装置,包括:
52.数据采集模块,用于获取请求数据,请求数据为待发送至接口的数据;
53.预测模块,用于将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;
54.流量控制模块,用于基于请求数量阈值,对接口进行流量控制。
55.上述实施例通过获取请求数据,请求数据为待发送至接口的数据;将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。采用模型预测的方式调整数据输入阈值,这种方式阈值流控平滑,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
56.在本公开的一些实施例中,预测模块,可以包括:pca降维模块、模型训练模块和阈值预测模块;
57.其中,pca降维模块用于对数据集进行降维处理;
58.模型训练模块用于将降维处理后的数据传入模型中进行训练,并生成模型权重文件提供给阈值预测模块进行加载;通过logstash技术采集实时数据,经kafka传至阈值预测
模块;
59.阈值预测模块通过加载模型权重文件,对传入的数据进行预测,并输出结果,该接口流量控制装置结构如图2所示。
60.模型训练模块主要实现数据采集和预处理,结合改进的三层lstm神经网络模型,引入注意力机制对参数元素进行不同权重赋值,对历史数据进行训练,生成多因子预测模型,建立多因子变量和动态阈值之间的非线性关系,增强拟合度。包含以下步骤,如图3所示。
61.步骤一:数据采集和预处理。以分钟为刻度,采集实际生产系统近三个月的数据,包括核心生产主机的cpu使用率、内存使用率、i/o使用率等,组织运维专家对数据进行标注,利用pca算法对标注后的数据进行降维处理。
62.步骤二:模型训练。把降维后的数据按照8:2的比例分为训练集和测试集,训练集数据作为输入向量由lstm三层模型进行训练,注意力机制通过attention函数会给响应时长、i/o使用率、内存使用率和cpu使用率等参数数据生成注意力分配系数,采用的注意力权重系数分别为(0.6,0.2,0.1,0.1),从而体现出来每个参数对预测信息的影响程度。通过不断对模型参数训练调优,测试集数据为模型预测性能提供依据,输入向量的维度为(9,4)。lstm模型可以有效的记忆前序时间序列,并且解决了因原生lstm模型结构单一而导致的参数少和准确率低等问题。
63.步骤三:模型更新。lstm网络模型根据前向传播算法进行内部状态的更新,使用反向传播算法(backpropagation algorithm)训练更新其权重与偏差,利用adam优化算法最小化损失函数,从而让网络输出尽可能拟合真实数据。
64.前向传播算法更新lstm网络模型输出门值,公式如下。
65.h
t
=σ(w0[h
t-1
,x
t
] b0)*tanh(c
t
)
[0066]
其中w0为超参权重矩阵,h
t-1
为lstm网络模型在t-1序列时刻的输出值,x
t
为t序列时刻的训练向量,b0为超参偏置矩阵,c
t
为h
t-1
节点的另一个输出值,σ为激活函数。
[0067]
lstm用反向传播算法训练更新权重与偏差,损失函数公式如下。
[0068][0069][0070]yt
为真实值,为预测值,l为损失函数值。
[0071]
梯度下降(gradient descent)使用adam优化算法求损失函数最小值,该算法不仅存储了平方梯度的指数衰减平均值,而且保持了先前梯度的指数衰减平均值,公式如下。
[0072][0073][0074][0075]
其中θ
t
为第t次迭代下的训练参数,m
t
为梯度的第一时刻平均值,v
t
为梯度的第二
时刻非中心差值,β1、β2、ε、η均为超参数,η为学习率,控制权重的更新比率,本文取值0.0001,β1为一阶矩估计的指数衰减率,本文取值0.9,β2为二阶矩估计的指数衰减率,本文取值0.999,ε本文取值10-8
;以上参数取值都是通过结合历史数据不断进行模型参数调优得到的最优值。在实际训练过程中,adam方法收敛速度快、学习效果更有效,并且纠正了其它优化函数存在的问题(如:学习率消失、收敛慢、损失函数波动大)。
[0076]
该方法对原生lstm、三层lstm、三层lstm 注意力机制、四层lstm模型的准确率做了对比实验,如图4所示。从图中可以看出,未经改进的原生lstm模型准确率低于其它模型;三层lstm模型准确率低于三层lstm 注意力机制模型;四层lstm模型准确率低于三层lstm模型。由此可见,随着lstm模型层数的加深,其准确率反而下降,经过对比各种不同的改进模型,三层lstm 注意力机制模型准确率最高。
[0077]
流量控制模块主要实现了系统接口流量预测和控制功能。包含以下步骤,如图5所示。
[0078]
步骤一:模型反持久化。训练完成的模型保存在模型库,在预测时,加载模型的权重、偏置等值至内存,供预测使用。
[0079]
步骤二:以分钟为刻度,通过logstash数据采集技术将各主机的实时数据采集传输至kafka,并使用数据预处理功能对数据进行预处理。
[0080]
步骤三:上述两步的值作为输入传给指标预测模块,预测模块根据传来的信息生成预测曲线,预测曲线覆盖的面积即为流控区间,如图6所示。
[0081]
其中,为预测值,y
t
为流控值。若t时刻的真实流量值y
t
≤y
t
,则全部处理,若y
t
≥y
t
,则按照最大值y
t
处理,在以后时刻(例t 1时刻)处理y
t-y
t

[0082]
上述实施例在模型结构方面,采用三层lstm模型对多因子变量进行训练,有效的记忆了前序时间序列,并且解决了因原生lstm模型结构单一而导致的参数少和准确率低等问题,有效的学习了主机cpu、内存、i/o等多因子之间的关系,解决了线性模型对复杂数学结构拟合度不够的弊端,深层次挖掘因变量和阈值之间的关系。同时,引入注意力机制对参数元素进行权重赋值,注意力机制会给多个参数数据分配不同的注意力大小,形成了各个参数的注意力权重系数,体现出来每个参数对预测值的影响程度,提高了模型训练运行的效率,获取更多重要时间的整体特征,解决了最终输出对输入数据的时间特征表现不完整问题。
[0083]
通过结合历史数据不断进行模型参数调优,最终使用(9,4)维度向量,实现了由单因子变量向多因子变量、线性拟合向非线性拟合转换;使用调参后的adam优化器纠正了其它优化函数存在的学习率消失、收敛慢、损失函数波动大问题,使其收敛速度快、学习效果更有效。采用平滑式阈值流控,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
[0084]
可选的,如图7所示,本技术实施例还提供一种电子设备700,包括处理器701,存储器702,存储在存储器702上并可在所述处理器701上运行的程序或指令,该程序或指令被处理器701执行时实现上述接口流量控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0085]
需要说明的是,本技术实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
[0086]
图8为实现本技术实施例的一种电子设备的硬件结构示意图。
[0087]
该电子设备800包括但不限于:射频单元801、网络模块802、音频输出单元803、输入单元804、传感器805、显示单元806、用户输入单元807、接口单元808、存储器809、以及处理器810等部件。
[0088]
本领域技术人员可以理解,电子设备800还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图8中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部
[0089]
应理解的是,本技术实施例中,输入单元804可以包括图形处理器(graphics processing unit,gpu)8041和麦克风8042,图形处理器8041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元806可包括显示面板8061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板8061。用户输入单元807包括触控面板8071以及其他输入设备8072。触控面板8071,也称为触摸屏。触控面板8071可包括触摸检测装置和触摸控制器两个部分。其他输入设备8072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。存储器809可用于存储软件程序以及各种数据,包括但不限于应用程序和操作系统。处理器810可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器810中。
[0090]
上述实施例电子设备同样是通过获取请求数据,请求数据为待发送至接口的数据;将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。采用模型预测的方式调整数据输入阈值,这种方式阈值流控平滑,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
[0091]
本技术实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述接口流量控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0092]
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等。
[0093]
上述实施例存储介质所存储的程序被执行后同样是通过获取请求数据,请求数据为待发送至接口的数据;将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。采用模型预测的方式调整数据输入阈值,这种方式阈值流控平滑,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
[0094]
本技术实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述接口流量控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0095]
上述实施例芯片处理执行的程序同样是通过获取请求数据,请求数据为待发送至
接口的数据;将请求数据输入阈值预测模型中,得到发送至接口的请求数量阈值;基于请求数量阈值,对接口进行流量控制。采用模型预测的方式调整数据输入阈值,这种方式阈值流控平滑,充分利用请求接收主机的资源,在保障系统平稳运行的前提下,保证了业务最大化处理。
[0096]
应理解,本技术实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
[0097]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0098]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。
[0099]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献