服务器接口性能的自动化压测方法及装置与流程

    技术2026-07-13  4


    本发明涉及互联网,尤其涉及一种服务器接口性能的自动化压测方法及装置。


    背景技术:

    1、随着互联网技术的快速发展,网上购物逐渐成为人们青睐的消费方式。在各大网购平台,商家常会采用各种营销手段去吸引网上的消费者,如折扣营销、积分营销等等,以使得商品得到更好的推广与销售。

    2、为了保证网上营销活动的有序进行,一般需要在营销活动开展之前,对服务器的大量接口进行压力测试,以确保届时的营销活动能够得到网络资源的充分支持,而不会发生资源冲突的情况。当前,在相关的压力测试方案中,常采用不同的压测用例,但这会使得各用例之间的压测标准不统一,难以提升压测结果的准确度,从而影响网上营销活动的正常进行。可见,提供一种新的服务器接口压测方法以提高压测结果的准确性尤为重要。


    技术实现思路

    1、本发明所要解决的技术问题在于,提供一种服务器接口性能的自动化压测的方法及装置,可以统一各接口压测用例之间压测标准,进而可以提升对待测试接口的压测可靠性及准确性,从而可以得到精准的接口压测结果,以使得待测试接口性能能够保证营销活动的正常进行。

    2、为了解决上述技术问题,本发明第一方面公开了一种服务器接口性能的自动化压测方法,所述方法包括:

    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、根据所述待测试接口的接口实现功能信息以及对应的接口数据流方向,确定所述待测试接口的链路用例确定需求信息;所述待测试接口的链路用例确定需求信息包括所述待测试接口的链路数据源需求信息、链路请求方式需求信息、链路数据目的地需求信息以及链路运行环境需求信息中的至少一种;

    49、根据所述待测试接口的场景用例确定需求信息以及所述链路用例确定需求信息,确定所述待测试接口对应的压测用例;所述压测用例包括压测场景用例以及压测链路用例。

    50、作为一种可选的实施方式,在本发明第二方面中,所述压测模块通过所述待测试接口对应的压测用例,对所述待测试接口执行预压测操作,得到所述待测试接口的预压测结果的方式具体为:

    51、根据所述待测试接口对应的压测用例,确定所述待测试接口所需访问的数据库,并创建与所述数据库相匹配的影子库;

    52、通过预设的所述压测用例对应的用例影子流量,对所述待测试接口进行调用,以将所述用例影子流量对应的流量数据写入至所述影子库;

    53、获取所述影子库中所述流量数据的第一目标情况,作为所述待测试接口的预压测结果;所述流量数据的第一目标情况包括所述流量数据的第一写入情况和/或对应的服务器的第一工作情况,所述流量数据的第一写入情况包括所述流量数据的第一写入误差情况和/或第一写入缺漏情况,所述流量数据对应的服务器的第一工作情况包括所述服务器的中央处理器的第一运算情况、内存的第一缓存情况、硬盘的第一读写情况以及宽带的第一数据传输情况中的至少一种。

    54、作为一种可选的实施方式,在本发明第二方面中,所述压测模块根据用于压测的目标压测参数,对所述待测试接口执行目标压测操作,得到所述待测试接口的目标压测结果的方式具体为:

    55、根据用于压测的目标压测参数以及预设的所述压测用例对应的用例影子流量,对所述待测试接口进行调用,以基于所述目标压测参数将所述用例影子流量对应的流量数据写入至所述待测试接口对应的影子库;

    56、获取所述影子库中所述流量数据的第二目标情况,并判断所述第二目标情况是否为预设的压测性能情况;所述流量数据的第二目标情况包括所述流量数据的第二写入情况和/或对应的服务器的第二工作情况,所述流量数据的第二写入情况包括所述流量数据的第二写入误差情况和/或第二写入缺漏情况,所述流量数据对应的服务器的第二工作情况包括所述服务器的中央处理器的第二运算情况、内存的第二缓存情况、硬盘的第二读写情况以及宽带的第二数据传输情况中的至少一种;

    57、当判断出所述第二目标情况为所述压测性能情况时,对所述目标压测参数进行更新,并触发执行所述的根据用于压测的目标压测参数以及预设的所述压测用例对应的用例影子流量,对所述待测试接口进行调用,以基于所述目标压测参数将所述用例影子流量对应的流量数据写入至所述待测试接口对应的影子库的操作;

    58、当判断出所述第二目标情况不为所述压测性能情况时,获取所述待测试接口对应的上一次目标压测参数,并根据所述上一次目标压测参数,确定所述待测试接口的目标压测结果。

    59、作为一种可选的实施方式,在本发明第二方面中,所述第二确定模块根据所述待测试接口的场景用例确定需求信息以及所述链路用例确定需求信息,确定所述待测试接口对应的压测用例的方式具体为:

    60、确定所述待测试接口的接口参数;所述待测试接口的接口参数包括所述待测试接口的接口状态参数、接口类型参数、接口工作模式参数以及接口保护参数中的至少一种;

    61、根据所述待测试接口的接口参数,确定所述待测试接口对应的压测用例确定影响度,并判断所述压测用例确定影响度是否大于等于预设的影响度阈值;

    62、当判断出所述压测用例确定影响度大于等于所述影响度阈值时,根据所述待测试接口的接口参数、所述场景用例确定需求信息以及所述链路用例确定需求信息,确定所述待测试接口对应的压测用例;

    63、当判断出所述压测用例确定影响度小于所述影响度阈值时,根据所述待测试接口的场景用例确定需求信息以及所述链路用例确定需求信息,确定所述待测试接口对应的压测用例。

    64、作为一种可选的实施方式,在本发明第二方面中,所述判断模块判断所述预压测结果是否表示对所述待测试接口预压测成功的方式具体为:

    65、根据所述流量数据的第一写入情况,确定所述流量数据的目标写入参数;所述流量数据的目标写入参数包括所述流量数据的写入准确度和/或写入完整度;

    66、判断所述目标写入参数是否大于等于预设的写入参数阈值;

    67、当判断出所述目标写入参数大于等于所述写入参数阈值时,根据所述流量数据对应的服务器的第一工作情况,确定所述服务器的工作受影响度;

    68、判断所述工作受影响度的绝对值是否小于等于预设的工作受影响度阈值;

    69、当判断出所述工作受影响度小于等于所述工作受影响度阈值时,确定所述预压测结果表示对所述待测试接口预压测成功。

    70、本发明第三方面公开了另一种服务器接口性能的自动化压测装置,所述装置包括:

    71、存储有可执行程序代码的存储器;

    72、与所述存储器耦合的处理器;

    73、所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的服务器接口性能的自动化压测方法。

    74、本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的服务器接口性能的自动化压测方法。

    75、与现有技术相比,本发明实施例具有以下有益效果:

    76、本发明实施例中,确定需要压测的待测试接口对应的压测用例;通过待测试接口对应的压测用例,对待测试接口执行预压测操作,得到待测试接口的预压测结果,并判断预压测结果是否表示对待测试接口预压测成功,若是,则根据用于压测的目标压测参数,对待测试接口执行目标压测操作,得到待测试接口的目标压测结果。可见,实施本发明能够智能化地确定出需要压测的待测试接口的压测用例,并对待测试接口进行自动化压测,这样,可以统一各接口压测用例之间压测标准,进而可以提升对待测试接口的压测可靠性及准确性,从而可以得到精准的接口压测结果,以保证待测试接口性能与相应的营销活动场景相匹配,保证营销活动的正常进行;同时通过对接口性能的自动化压测,可简化传统的压测准备过程,从而提升对接口性能的压测效率。


    技术特征:

    1.一种服务器接口性能的自动化压测方法,其特征在于,所述方法包括:

    2.根据权利要求1所述的服务器接口性能的自动化压测方法,其特征在于,所述确定需要压测的待测试接口,包括:

    3.根据权利要求2所述的服务器接口性能的自动化压测方法,其特征在于,所述确定所述待测试接口对应的压测用例,包括:

    4.根据权利要求1-3任一项所述的服务器接口性能的自动化压测方法,其特征在于,所述通过所述待测试接口对应的压测用例,对所述待测试接口执行预压测操作,得到所述待测试接口的预压测结果,包括:

    5.根据权利要求4所述的服务器接口性能的自动化压测方法,其特征在于,所述根据用于压测的目标压测参数,对所述待测试接口执行目标压测操作,得到所述待测试接口的目标压测结果,包括:

    6.根据权利要求3所述的服务器接口性能的自动化压测方法,其特征在于,所述根据所述待测试接口的场景用例确定需求信息以及所述链路用例确定需求信息,确定所述待测试接口对应的压测用例,包括:

    7.根据权利要求4所述的服务器接口性能的自动化压测方法,其特征在于,所述判断所述预压测结果是否表示对所述待测试接口预压测成功,包括:

    8.一种服务器接口性能的自动化压测装置,其特征在于,所述装置包括:

    9.一种服务器接口性能的自动化压测装置,其特征在于,所述装置包括:

    10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-7任一项所述的服务器接口性能的自动化压测方法。


    技术总结
    本发明公开了一种服务器接口性能的自动化压测方法及装置,该方法包括:确定需要压测的待测试接口对应的压测用例;通过待测试接口对应的压测用例,对待测试接口执行预压测操作,得到待测试接口的预压测结果,并判断预压测结果是否表示对待测试接口预压测成功,若是,则根据用于压测的目标压测参数,对待测试接口执行目标压测操作,得到待测试接口的目标压测结果。可见,实施本发明能够智能化地确定出需要压测的待测试接口的压测用例,并对待测试接口进行自动化压测,这样,可以统一各接口压测用例之间压测标准,进而可以提升对待测试接口的压测可靠性及准确性,从而可以得到精准的接口压测结果,以使得待测试接口性能能够保证营销活动的正常进行。

    技术研发人员:陈小平,程铄生,尹泉,邱晓辉,黄文强
    受保护的技术使用者:佛山市云米电器科技有限公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-45189.html

    最新回复(0)