自动化压测方法、介质及设备与流程

未命名 07-27 阅读:77 评论:0


1.本发明涉及运维领域,尤其涉及一种自动化压测方法、介质及设备。


背景技术:

2.在大规模分布式系统的运维管理过程中,一般需要有一套强大的分布式监控系统实现对应的监控能力保证。对于监控系统来说,时序数据库的稳定是关系整个系统性能的核心。对于小型系统的监控,几台、几十台服务器规模的场景,时序数据库一般都远远达不到其性能瓶颈。但对于大规模分布式系统(如万台规模),大量的监控指标写入和复杂细化的异常检测策略会让时序数据库面临巨大的稳定性挑战。此时,时序数据库的容量评估,将成为一个主要的问题。
3.当前针对时序数据库的容量评估,主要的解决方案如下:
4.1、根据时序数据库的资源开销,估算时序数据库的容量;
5.2、使用时序数据库脱机压测工具,进行数据库性能评估;
6.3、使用通用压测工具,如jmeter,进行仿真压测。
7.尽管以上方案可以一定程度解决时序数据库容量评估问题,但以上方案都存在不同程度的缺陷。
8.对于方案1,一般很难准确估算出实际容量,给出的评估值准确度很差。
9.对于方案2,一般用于时序数据库的性能评估。由于整个压测工具可以预设的场景与实际生产环境的场景差别极大,因此实际压测结果仅有初步的参考意义,无法用于实际判断真实容量。
10.对于方案3,通用压测工具一般缺少对于时序数据的针对性设计。整个压测过程完全依赖技术人员的技术方案设计。设计完善,则实操成本巨大,耗费人力巨大,设计不完善,则难以真实体现真实环境的容量。


技术实现要素:

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.在一实施例中,所述将所述压测流量按照预设指标进行重建,获得压测流量重建结果,包括:
49.将所述压测流量按照生产流量和/或检索流量进行重建,获得生产流量重建结果和/或检索流量重建结果;
50.其中,所述压测流量按照生产流量进行重建的步骤,包括:
51.确定所述压测任务的数据规模,确定所述生产流量重建比例;或,
52.根据所述生产流量分析建模的各类模型参数,按照概率生成监控数据;
53.根据各周期数据相位,将各周期生成的所述监控数据合并;
54.对合并后的监控数据进行周期的循环翻倍,重建生成预设时长的监控数据;
55.所述压测流量按照检索流量进行重建的步骤,包括:
56.确定所述压测任务的数据规模,进行同比例对齐,确定所述检索流量重建比例;或,
57.根据压测检索流量倍数,对所述检索流量进行扩充;或,
58.根据所述检索流量分析建模获得的各类模型参数,确定各个周期各项指标的概率数据;
59.根据各周期数据相位,将各周期生成的所述概率数据合并。
60.在一实施例中,所述将所述压测流量重建结果进行压力发送,包括:
61.根据所述压测流量重建结果,确定压力发送节点的数量;
62.同步对齐所有所述压力发送节点的时间设定;
63.根据所述压测任务,分别对所述生产流量重建结果和所述检索流量重建结果进行分开发送,并记录发送过程中的关键指标。
64.在一实施例中,所述在压力发送过程中,对时序数据库指标进行观测,获得观测指标,包括:
65.获取压力发送节点的关键指标以及提取所述时序数据库自身的关键性能指标。
66.为了实现上述目的,还提供一种计算机存储介质,其特征在于,所述计算机存储介质上存储有自动化压测方法程序,所述自动化压测方法程序被处理器执行时实现上述任一所述的自动化压测方法的步骤。
67.为了实现上述目的,还提供一种自动化压测设备,其特征在于,包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的自动化压测方法程序,所述处理器执行所述自动化压测方法程序时实现上述任一所述的自动化压测方法的步骤。
68.本技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
69.本技术通过深入分析使用场景,精细化建立模型,自动化实施回放压测,从而帮助运维人员评估时序数据库的容量,使时序数据库的压测质量不再依赖技术人员自身的专业水平,也不需要投入大量人力,只需要设定压测任务,系统就可以自动完成整个压测流程,最终给出贴近实际使用场景的时序数据库容量。同时,压测过程全程无需人工介入,极大降低了时序数据库容量评估的技术难度,也极大减少了人力的投入。
附图说明
70.图1为本技术自动化压测方法的第一实施例的流程示意图;
71.图2为本技术自动化压测过程示意图;
72.图3为本技术自动化压测方法第一实施例中步骤s110的具体实施步骤;
73.图4为本技术自动化压测方法第一实施例中步骤s120的具体实施步骤;
74.图5为本技术自动化压测方法第一实施例中步骤s150的具体实施步骤;
75.图6为本技术实施例中涉及的自动化压测设备的硬件架构示意图。
具体实施方式
76.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
77.本发明实施例的主要解决方案是:根据配置参数,创建压测任务;基于所述压测任务,执行压测场景分析建模,生成压测场景分析模型;基于将所述压测场景分析模型的模型参数,生成压测流量;将所述压测流量按照预设重建指标进行重建,获得压测流量重建结果;将所述压测流量重建结果进行压力发送;在压力发送过程中,对时序数据库指标进行观测,获得观测指标;若所述观测指标未达到容量瓶颈,则调整所述预设重建指标;直至所述观测指标达到容量瓶颈,则结束压测,生成压测报告。本技术自动化压测方法使自动化压测具备了更加贴近生产环境的仿真能力。用户可以按需设定压测任务,系统完成压测分析后给用户提供压测报告。该压测过程全程无需人工介入,极大降低了时序数据库容量评估的技术难度,也极大减少了人力的投入。
78.为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
79.参照图1,图1为本技术自动化压测方法的第一实施例,所述方法包括:
80.步骤s110:根据配置参数,创建压测任务;
81.具体地,配置参数为根据待测试的业务系统的实际测试需求,人工预设的一些参数,根据这些参数确定待测试的业务系统的压力测试任务。配置参数可以存储在数据库中,需要使用的时候从数据库中查询得到。
82.压测是通过实际业务访问请求的流量或者仿真构造的流量,对业务系统进行压力测试,来确定业务系统稳定提供服务的容量。
83.创建压测任务可以是接收用户的任务设定;
84.步骤s120:基于所述压测任务,执行压测场景分析建模,生成压测场景分析模型;
85.具体地,根据用户的任务设定,以及生产环境的实际情况,进行流量分析和场景建模,最终获得压测场景分析模型。
86.步骤s130:基于所述压测场景分析模型的模型参数,生成压测流量;
87.具体地,根据建模场景的模型参数,生产仿真的压测流量序列。
88.步骤s140:将所述压测流量按照预设重建指标进行重建,获得压测流量重建结果;
89.具体地,预设重建指标可以是压测检索流量的不同的倍数;也可以是生产数据的等比例扩充。
90.步骤s150:将所述压测流量重建结果进行压力发送;
91.具体地,根据压测流量序列,实现精准高仿真的流量发送。
92.步骤s160:在压力发送过程中,对时序数据库指标进行观测,获得观测指标;
93.具体地,时序数据为带时间标签(按照时间的顺序变化,即时间序列化)的数据,也称为时间序列数据。比方说机器的cpu使用率,1点钟是10%,2点钟是15%,3点钟是12%,数值随着时间进行变化,就是典型的一种时序数据。另外,时序数据库全称为时间序列数据
库,主要用于存储时序数据。由于时序数据的特点,一般周期性写入,数据不能修改,数据压缩率高等特点。
94.具体地,观测指标至少包含流量发送节点的关键指标(发送成功率、发送平均响应时间、发送流量波形等)和时序数据库自身的关键性能指标(cpu使用率、内存使用率、缓存命中率、io使用率、网络连接数等)。
95.步骤s170:若所述观测指标未达到容量瓶颈,则调整所述预设重建指标;
96.具体地,容量是业务系统稳定工作能承载的最大业务请求并发量。如果观测指标并未超过业务系统稳定工作所能承载的最大业务请求并发量,则重新预设重建指标,使压测流量重建。
97.步骤s180:直至所述观测指标达到容量瓶颈,则结束压测,生成压测报告。
98.具体地,对观测指标进行容量风险分析:
99.1、对于发送成功率低于所需的阈值时,需要终止压测,该情况时序数据库已经不能正常提供服务;
100.2、对于发送响应时间高于所需阈值时,需要终止压测,该情况时序数据库提供的服务质量不能满足要求;
101.3、对于时序数据库自身的关键性能指标逼近安全阈值时,可以终止压测,该情况时序数据库的服务能力接近极限。如cpu使用率低于70%认为是安全阈值;
102.4、在未出现1和2这两种情况时,对于3的情况达到极限即为容量极限。对于出现1和2这两种情况时,那么此前最高的满足服务质量的情况即为容量极限。
103.具体地,对观测指标进行容量风险反馈:
104.1、将容量风险评估数据返回给压测任务管理;
105.2、未达到预期目标,则进行下一轮压测;
106.3、达到预期目标,则进行压测报告输出。
107.具体地,所述压测报告首先提供一个汇总结论,在当前/扩张/缩减业务场景下,时序数据库的极限检索流量是多少。压测报告需要对整个压测过程进行记录,提供每个不同的压测场景下,数据请求的成功率、响应时间以及时序数据库自身资源消耗情况。
108.在本实施中,通过通过深入分析使用场景,精细化建立模型,自动化实施回放压测,从而帮助运维人员评估时序数据库的容量。在保障时序数据库稳定的同时,大幅降低了人工压测的成本,提高了压测的准确性。
109.参照图3,图3为本技术自动化压测方法第一实施例中步骤s110的具体实施步骤,所述基于所述压测场景分析模型的模型参数,生成压测流量的步骤之后,包括:
110.步骤s111:若生产流量固定,则增加异常检测分析和/或调整检索流量倍数,获取所述容量瓶颈;
111.具体地,该场景用于评估在数据生产规模不变的情况下,检索流量可以扩张多少才能达到容量极限。这种场景一般是评估针对现有监控,配置更多的异常检测分析,来挖掘故障和定位原因的场景。该场景下,需要评估当前时序数据库还能再承担多少检测分析流量,是否需要扩容。该场景数据生产流量固定,检索流量按1.2倍、1.4倍等倍数进行扩张压力测试,找到极限容量,即容量瓶颈。
112.步骤s112:若生产流量不固定,则控制所述生产流量按照扩张比例进行等比扩张,
同时调整所述检索流量倍数,获取所述容量瓶颈。
113.具体地,该场景用于评估业务规模发生变化情况下的容量极限。常见的场景如业务规模扩张,部署的服务器从5千台扩张到8千台,此时需要评估时序数据库是否还能满足业务发展。该场景数据生产流量需要按照扩张比例进行等比扩张。检索流量需要在等比扩张后,再按不同的倍数比例进行压力测试,找到极限
114.参照图4,图4为本技术自动化压测方法第一实施例中步骤s120的具体实施步骤,所述基于所述压测任务,执行压测场景分析建模,生成压测场景分析模型,包括:
115.步骤s121:采集流量信息;其中所述流量信息至少包括所述生产流量与所述检索流量;
116.具体地,采集流量信息至少包括方式:
117.1、在时序数据库需要进行实时日志采集,并将日志进行归档存储,用于后续建模分析;
118.2、对于不直接产生记录日志的时序数据库,可以引入代理模块,代理全部读写请求,并将读写请求记录日志归档存储;
119.3、归档日志按需控制存储时间。一般保存7天即可满足常规的建模分析需求;
120.4、日志归档按照数据生产流量和数据检索流量进行分别归档,以方便下一步的分析建模。
121.步骤s122:基于所述流量信息,分别进行生产流量分析建模以及检索流量分析建模;
122.具体地,所述流量信息中至少包含了生产流量与检索流量,则基于生产流量进行生产流量分析建模,而基于检索流量进行检索流量分析建模;
123.步骤s123:基于所述生产流量分析建模以及所述检索流量分析建模获得的各类模型参数,进行数据整合,生成压测场景分析模型。
124.具体地,统计生产流量分析建模获得的模型参数以及检索流量分析建模获得的模型参数,并将两个模型的各类参数进行数据整合,最终生成压测场景分析模型。
125.在一实施例中,所述生产流量分析建模的步骤,包括:
126.根据所述流量信息,进行周期分析、相位分析以及标签分析;
127.其中,所述周期分析包括:
128.根据所述流量信息,对不同周期的监控数据进行分类;
129.对每个周期的所述监控数据进行流量分布拟合;
130.对每个周期输出拟合分布的周期函数参数;
131.具体地,周期分析具体包括下述内容:
132.1、根据流量日志,对不同周期的监控数据进行分类。一般常见的周期分类如5s/10s/30s/60s周期等
133.2、对于每个周期的监控日志,进行流量分布拟合。一般地,设定一个固定时间间隔,如0.1s,然后对一个周期内的监控数据进行离散化统计。重复统计归档日志,会得到若干个周期的统计结果。然后按照每个离散点进行均值/九五分位值统计,然后再进行分布拟合,抽取拟合参数。常见的拟合分布有正态分布、平均分布、泊松分布等。
134.3、对每个周期输出拟合分布的周期函数参数。
135.所述相位分析包括:
136.分析不同周期流量的峰值匹配情况:
137.获得各周期数据相位差,输出相位差参数;
138.具体地,所述相位分析具体包括:
139.1、分析不同周期流量的峰值匹配情况。例如5s周期的数据和10s周期的数据如果同相位,那么二者叠加的效果就是一个5s周期主要是5s数据的峰值,下一个5s周期则是5s数据和10s数据峰值的叠加。
140.2、明确各周期数据相位差之后,输出相位差参数。
141.所述标签分析包括:
142.针对各类标签,按照标签数量以及对应每个周期的数据量进行分布拟合;
143.统计标签长度,对所述标签长度的字符数和对应每个周期的数据量进行分布拟合;
144.输出各周期的所述标签数量的分布拟合参数与所述标签长度的分布拟合参数。
145.具体地,所述标签分析具体包括:
146.1、为了满足复杂的监控场景,监控数据经常会携带标签信息。因此对于监控数据含有标签的数量也需要进行分析。
147.2、针对无标签数据、一个标签数据、多个标签数据,按标签数量和该标签下在每个周期的数据量进行分布拟合。
148.3、统计标签字符长度,对标签长度的字符数和对应每个周期的数据量进行分布拟合。如5s周期的标签长度服从n=10,p=0.5的二项分布。
149.4、输出各周期数据的标签数量、标签长度的分布拟合参数。
150.在一实施例中,所述检索流量分析建模的步骤,包括:
151.根据所述流量信息,进行周期性流量分析与随机流量分析;
152.其中,所述周期性流量分析包括:
153.若检测到周期性流量,则进行周期分析、相位分析以及标签分析,获取对每个周期的拟合分布的周期函数参数、相位差参数、所述标签数量的分布拟合参数与所述标签长度的分布拟合参数;
154.统计分析所述周期性流量的检索时间偏移和时间跨度,并对各周期的所述检索时间偏移和所述时间跨度采用分布拟合的方法,生成时间拟合参数;
155.具体地,所述周期性流量分析具体包括:
156.1、周期性流量一般主要由异常检测或者内部平台二次开发带来,有明确周期性;
157.2、参照生产流量分析建模中的周期分析、相位分析和标签分析产出对应拟合参数;
158.3、对数据的检索时间偏移和时间跨度进行统计分析。例如查询昨日当前时间点一小时的数据,时间偏移是24小时,时间跨度是1小时,对应的场景为天同比。因此,对于各周期的偏移数据和时间跨度数据依然采用分布拟合的方法,产出时间拟合参数。
159.所述随机流量分析包括:
160.若检测到随机流量,且所述随机流量大于流量阈值,则截取预设时间内峰值高于预设值的随机流量,并进行分布拟合,生成随机拟合参数。
161.具体地,所述随机流量分析具体包括:
162.1、纯随机的流量一般在生产场景中流量占比较小,不太容易成为容量瓶颈。对于此类场景,可以直接忽略。
163.2、对于存在大流量的随机流量场景,可以直接截取峰值较高的一段时间流量,进行分布拟合,产出随机拟合参数。
164.在一实施例中,所述将所述压测流量按照预设指标进行重建,获得压测流量重建结果,包括:
165.将所述压测流量按照生产流量和/或检索流量进行重建,获得生产流量重建结果和/或检索流量重建结果;
166.其中,所述压测流量按照生产流量进行重建的步骤,包括:
167.确定所述压测任务的数据规模,确定所述生产流量重建比例;或,
168.根据所述生产流量分析建模的各类模型参数,按照概率生成监控数据;
169.根据各周期数据相位,将各周期生成的所述监控数据合并;
170.对合并后的监控数据进行周期的循环翻倍,重建生成预设时长的监控数据;
171.具体地,所述压测流量按照生产流量进行重建的具体包括:
172.1、数据规模确定。根据压测任务设定的业务规模变化和建模参数,确定生成比例。如业务规模扩张20%,那么压测参数的流量也需要同步扩充为原来的1.2倍。
173.2、根据所述生产流量分析建模的模型参数,确定一个监控项数据为某个周期、拥有若干个标签、以及每个标签有多少个字符的概率,然后按照概率生成一条监控数据。比方说,监控项30%的概率为30s周期数据,70%的概率为60s周期数据,40%的概率有1个标签,20%的概率有2个标签,40%的概率没有标签,标签字符长度的概率为2个30%、4个50%、6个20%。那么迭代下来就可能生成数据:监控数据a,周期60s,没有标签;监控数据b,周期30s,有两个标签,标签1长度4个字符,标签2长度2个字符。
174.3、根据各周期数据相位,将各周期生成的监控数据进行合并。
175.4、由于压测一般需要持续较长时间,因此还要对重建的流量进行周期的循环翻倍,最终产生1h的监控生产数据。
176.所述压测流量按照检索流量进行重建的步骤,包括:
177.确定所述压测任务的数据规模,进行同比例对齐,确定所述检索流量重建比例;或,
178.根据压测检索流量倍数,对所述检索流量进行扩充;或,
179.根据所述检索流量分析建模获得的各类模型参数,确定各个周期各项指标的概率数据;
180.根据各周期数据相位,将各周期生成的所述概率数据合并。
181.具体地,所述压测流量按照检索流量进行重建的步骤,具体包括:
182.1、数据检索流量的数据规模,一种场景是同当前规模同比例对齐,这种场景扩充方法与生产相同。另一种场景则是需要不断扩增来探测容量瓶颈。这种场景就需要同时生成1.2倍、1.4倍、1.6倍等不同倍数的扩充流量。
183.2、根据检索的建模参数,同样确定各个周期各项指标的概率。与生产流量重建不同的点是要新增时间点和时间段的概率。另外数据的产生不再是使用随机字符生产数据项
和数据标签,而是在已重建的生产数据流量里进行选取。
184.3、根据周期相位,对数据进行合并。
185.参照图5,图5为本技术自动化压测方法第一实施例中步骤s150的具体实施步骤,所述将所述压测流量重建结果进行压力发送,包括:
186.步骤s151:根据所述压测流量重建结果,确定压力发送节点的数量;
187.步骤s152:同步对齐所有所述压力发送节点的时间设定;
188.步骤s153:根据所述压测任务,分别对所述生产流量重建结果和所述检索流量重建结果进行分开发送,并记录发送过程中的关键指标。
189.具体地,所述将所述压测流量重建结果进行压力发送,具体包括:
190.a)压力峰值预估
191.1、根据数据生产流量和数据检索流量的重建结果,确定压力发送节点的数量。
192.2、同步对齐所有压力发送节点的时间设定,避免因节点间的时间差异而导致流量构成出现偏差。
193.b)流量发送任务分派
194.1、根据压测任务参数,对重建流量进行分派。
195.2、发送压力节点采用生产数据流量和检索数据流量分开发送,方便后续动态调整检索数据流量。
196.c)流量发送及反馈数据记录
197.1、给流量发送节点下发流量发送指令和流量发送终止指令。
198.2、对于发送的流量数据,记录关键指标提供给指标观测模块。如发送请求成功率,发送请求平均响应时间等。
199.在一实施例中,所述在压力发送过程中,对时序数据库指标进行观测,获得观测指标,包括:
200.获取压力发送节点的关键指标以及提取所述时序数据库自身的关键性能指标。
201.具体地,提取流量发送节点的关键指标。如上面提到的发送成功率、发送平均响应时间、发送流量波形等。
202.提取时序数据库自身的关键性能指标。如cpu使用率、内存使用率、缓存命中率、io使用率、网络连接数等。
203.为实现上述目的,还提供一种计算机存储介质,所述计算机存储介质上存储有自动化压测方法程序,所述自动化压测方法程序被处理器执行时实现上述任一所述的自动化压测方法的步骤。
204.为实现上述目的,还提供一种自动化压测设备,其特征在于,包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的自动化压测方法程序,所述处理器执行所述自动化压测方法程序时实现上述任一所述的自动化压测方法的步骤。
205.本技术涉及一种自动化压测设备010包括如图6所示:至少一个处理器012、存储器011。
206.处理器012可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器012中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器012可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编
程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器011,处理器012读取存储器011中的信息,结合其硬件完成上述方法的步骤。
207.可以理解,本发明实施例中的存储器011可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double datarate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,drram)。本发明实施例描述的系统和方法的存储器011旨在包括但不限于这些和任意其它适合类型的存储器。
208.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
209.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
210.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
211.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
212.应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的
单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
213.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
214.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

技术特征:
1.一种自动化压测方法,其特征在于,所述方法包括:根据配置参数,创建压测任务;基于所述压测任务,执行压测场景分析建模,生成压测场景分析模型;基于所述压测场景分析模型的模型参数,生成压测流量;将所述压测流量按照预设重建指标进行重建,获得压测流量重建结果;将所述压测流量重建结果进行压力发送;在压力发送过程中,对时序数据库指标进行观测,获得观测指标;若所述观测指标未达到容量瓶颈,则调整所述预设重建指标;直至所述观测指标达到容量瓶颈,则结束压测,生成压测报告。2.如权利要求1所述的自动化压测方法,其特征在于,所述基于所述压测场景分析模型的模型参数,生成压测流量的步骤之后,包括:若生产流量固定,则增加异常检测分析和/或调整检索流量倍数,获取所述压测任务的所述容量瓶颈;若所述生产流量不固定,则控制所述生产流量按照扩张比例进行等比扩张,同时调整所述检索流量倍数,获取所述压测任务的所述容量瓶颈。3.如权利要求1所述的自动化压测方法,其特征在于,所述基于所述压测任务,执行压测场景分析建模,生成压测场景分析模型,包括:采集流量信息;其中所述流量信息至少包括所述生产流量与所述检索流量;基于所述流量信息,分别进行生产流量分析建模以及检索流量分析建模;基于所述生产流量分析建模以及所述检索流量分析建模获得的各类模型参数,进行数据整合,生成所述压测场景分析模型。4.如权利要求3所述的自动化压测方法,其特征在于,所述生产流量分析建模的步骤,包括:根据所述流量信息,进行周期分析、相位分析以及标签分析;其中,所述周期分析包括:根据所述流量信息,对不同周期的监控数据进行分类;对每个周期的所述监控数据进行流量分布拟合;对每个周期输出拟合分布的周期函数参数;所述相位分析包括:分析不同周期流量的峰值匹配情况:获得各周期数据相位差,输出相位差参数;所述标签分析包括:针对各类标签,按照标签数量以及对应每个周期的数据量进行分布拟合;统计标签长度,对所述标签长度的字符数和对应每个周期的数据量进行分布拟合;输出各周期的所述标签数量的分布拟合参数与所述标签长度的分布拟合参数。5.如权利要求3所述的自动化压测方法,其特征在于,所述检索流量分析建模的步骤,包括:根据所述流量信息,进行周期性流量分析与随机流量分析;其中,所述周期性流量分析包括:
若检测到周期性流量,则进行周期分析、相位分析以及标签分析,获取对每个周期的拟合分布的周期函数参数、相位差参数、所述标签数量的分布拟合参数与所述标签长度的分布拟合参数;统计分析所述周期性流量的检索时间偏移和时间跨度,并对各周期的所述检索时间偏移和所述时间跨度采用分布拟合的方法,生成时间拟合参数;所述随机流量分析包括:若检测到随机流量,且所述随机流量大于流量阈值,则截取预设时间内峰值高于预设值的随机流量,并进行分布拟合,生成随机拟合参数。6.如权利要求3所述的自动化压测方法,其特征在于,所述将所述压测流量按照预设指标进行重建,获得压测流量重建结果,包括:将所述压测流量按照生产流量和/或检索流量进行重建,获得生产流量重建结果和/或检索流量重建结果;其中,所述压测流量按照生产流量进行重建的步骤,包括:确定所述压测任务的数据规模,确定所述生产流量重建比例;或,根据所述生产流量分析建模的各类模型参数,按照概率生成监控数据;根据各周期数据相位,将各周期生成的所述监控数据合并;对合并后的监控数据进行周期的循环翻倍,重建生成预设时长的监控数据;所述压测流量按照检索流量进行重建的步骤,包括:确定所述压测任务的数据规模,进行同比例对齐,确定所述检索流量重建比例;或,根据压测检索流量倍数,对所述检索流量进行扩充;或,根据所述检索流量分析建模获得的各类模型参数,确定各个周期各项指标的概率数据;根据各周期数据相位,将各周期生成的所述概率数据合并。7.如权利要求6所述的自动化压测方法,其特征在于,所述将所述压测流量重建结果进行压力发送,包括:根据所述压测流量重建结果,确定压力发送节点的数量;同步对齐所有所述压力发送节点的时间设定;根据所述压测任务,分别对所述生产流量重建结果和所述检索流量重建结果进行分开发送,并记录发送过程中的关键指标。8.如权利要求1所述的自动化压测方法,其特征在于,所述在压力发送过程中,对时序数据库指标进行观测,获得观测指标,包括:获取压力发送节点的关键指标以及提取所述时序数据库自身的关键性能指标。9.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有自动化压测方法程序,所述自动化压测方法程序被处理器执行时实现权利要求1-8任一所述的自动化压测方法的步骤。10.一种自动化压测设备,其特征在于,包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的自动化压测方法程序,所述处理器执行所述自动化压测方法程序时实现权利要求1-8任一所述的自动化压测方法的步骤。

技术总结
本发明公开一种自动化压测方法、介质及设备,包括以下步骤:根据配置参数,创建压测任务;基于压测任务,执行压测场景分析建模,生成压测场景分析模型;基于将压测场景分析模型的模型参数,生成压测流量;将压测流量按照预设重建指标进行重建,获得压测流量重建结果;将压测流量重建结果进行压力发送;在压力发送过程中,对时序数据库指标进行观测,获得观测指标;若观测指标未达到容量瓶颈,则调整预设重建指标;直至观测指标达到容量瓶颈,则结束压测,生成压测报告。本发明提出一整套从分析建模、发压实测、压测报告反馈的完整自动化压测方法,使得在完成参数预设后,无需人力投入即可获取压测结果,极大地降低了人力成本。极大地降低了人力成本。极大地降低了人力成本。


技术研发人员:汪宁瀚 朱凤元 陈存利
受保护的技术使用者:度小满科技(北京)有限公司
技术研发日:2023.03.09
技术公布日:2023/7/25
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐