CN117370127A - 内容分发网络的调度测试方法、装置及计算机设备 - Google Patents

内容分发网络的调度测试方法、装置及计算机设备 Download PDF

Info

Publication number
CN117370127A
CN117370127A CN202210764295.4A CN202210764295A CN117370127A CN 117370127 A CN117370127 A CN 117370127A CN 202210764295 A CN202210764295 A CN 202210764295A CN 117370127 A CN117370127 A CN 117370127A
Authority
CN
China
Prior art keywords
data
test
scheduling
time sequence
monitoring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210764295.4A
Other languages
English (en)
Inventor
黄德龙
崔伟行
刘薇
苑中梁
刘博伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210764295.4A priority Critical patent/CN117370127A/zh
Publication of CN117370127A publication Critical patent/CN117370127A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

申请提供一种内容分发网络的调度测试方法、装置及计算机设备,包括:获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据;验证调度决策数据,用以判断是否调试内容分发网络的调度性能。采用本方法能够提升测试结果的可靠性。

Description

内容分发网络的调度测试方法、装置及计算机设备
技术领域
本申请涉及测试技术领域,具体涉及一种内容分发网络的调度测试方法、装置及计算机设备。
背景技术
CDN(Content Delivery Network,内容分发网络)调度功能是指CDN通过各种机制,将客户域名的流量请求引导到合适的目标节点机房,从而在流量、成本、服务质量取得最优值,也能应对突发请求和故障处理的功能。所以,对于CDN调度功能的测试工作尤为重要。
目前,对于CDN调度功能的测试方案,大致包括:对调度核心逻辑进行模块级别的测试,或是利用现网的CDN监控数据导入调度功能进行预发布测试。然而,第一种测试技术属于侵入式的代码改造,不仅会影响调度模块的完整性及测试结果的可靠性,还无法做到全链路的测试;第二种测试技术虽依赖于现网数据,但现网绝大部分时间都处于服务稳定的状态,因此也不能有效覆盖其他异常场景,也不能覆盖资源新增或删除的场景。
因此,现有对于CDN调度功能的测试方案,存在着测试结果可靠性不高的技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种内容分发网络的调度测试方法、装置及计算机设备,用以提升测试结果的可靠性。
第一方面,本申请提供一种内容分发网络的调度测试方法,包括:
获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据;
验证调度决策数据,用以判断是否调试内容分发网络的调度性能。
在本申请一些实施例中,获取内容分发网络中各个待测CDN节点的监控时序数据,包括:获取各待测CDN节点的监控数据;按照预设的时刻粒度,划分监控数据,并对划分后的监控数据进行时序调整,得到时序调整后的监控数据;根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据。
在本申请一些实施例中,根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据,包括:确定测试任务信息对应的目标数值;基于目标数值,修改时序调整后的监控数据,得到监控时序数据;其中,目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量;其中,节点带宽容量为对应待测CDN节点的带宽可用容量。
在本申请一些实施例中,调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据,包括:在预存的多个候选测试用例中,筛选出与测试任务信息关联的候选测试用例,作为目标测试用例;调用目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在本申请一些实施例中,根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据,包括:根据测试任务信息,确定目标测试环境;在目标测试环境下,根据仿真数据,对各待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,得到调度决策数据;其中,目标测试环境包括DNS调度测试环境和302调度测试环境。
在本申请一些实施例中,在获取内容分发网络中各个待测CDN节点的监控时序数据之后,还包括:获取各待测CDN节点的健康检查数据和访问延迟数据;调用与测试任务信息关联的目标测试用例,分析健康检查数据、访问延迟数据以及监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在本申请一些实施例中,验证调度决策数据,用以判断是否调试内容分发网络的调度性能,包括:验证调度决策数据是否与预设的预期决策数据相匹配;若是,则生成测试成功信息,并将测试成功信息发送至终端,用以提示终端无需对内容分发网络的调度性能进行调试;若否,则生成测试失败信息,并将测试失败信息发送至终端,用以指示终端对内容分发网络的调度性能进行调试。
第二方面,本申请提供一种内容分发网络的调度测试装置,包括:
数据获取模块,用于获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
模拟仿真模块,用于调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
调度测试模块,用于根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据;
决策验证模块,用于验证调度决策数据,用以判断是否调试内容分发网络的调度性能。
第三方面,本申请还提供一种计算机设备,包括:
一个或多个处理器;
存储器;以及一个或多个应用程序,其中的一个或多个应用程序被存储于存储器中,并配置为由处理器执行以实现上述的内容分发网络的调度测试方法。
第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器进行加载,以执行上述内容分发网络的调度测试方法中的步骤。
第五方面,本申请实施例提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面提供的方法。
上述内容分发网络的调度测试方法、装置及计算机设备,服务器通过获取内容分发网络中各个待测CDN节点的监控时序数据,并调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,即可得到仿真数据来对各待测CDN节点的资源调度过程进行测试,从而得到调度决策数据,最终验证该调度决策数据,即可用以判断是否调试内容分发网络的调度性能。由此,通过获取满足于测试任务的监控时序数据来对CDN调度功能进行任意场景的针对性测试,无需对源代码进行侵入式改造,也无需过分依赖于无异的现网数据,即可有效提升测试结果的可靠性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中内容分发网络的调度测试方法的场景示意图;
图2是本申请实施例中内容分发网络的调度测试方法的流程示意图;
图3是本申请实施例中内容分发网络的调度测试方法的具体流程示意图;
图4是本申请实施例中监控时序数据获取步骤的流程示意图一;
图5是本申请实施例中监控时序数据获取步骤的流程示意图二;
图6是本申请实施例中仿真数据获取步骤的流程示意图;
图7是本申请实施例中调度决策数据获取步骤的流程示意图;
图8是本申请实施例中调度决策数据验证步骤的流程示意图;
图9是本申请实施例中模拟仿真步骤的流程示意图;
图10是本申请实施例中内容分发网络的调度测试装置的结构示意图;
图11是本申请实施例中计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,术语“例如”一词用来表示“用作例子、例证或说明”。本申请中被描述为“例如”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
需要说明的是,本申请实施例提供的内容分发网络的调度测试方法,可以应用于如图1所示的内容分发网络的调度测试系统中。其中,该内容分发网络的调度测试系统包括终端102和服务器104。终端102可以是既包括接收和发射硬件的设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。终端102具体可以是台式终端或移动终端,终端102具体还可以是手机、平板电脑、笔记本电脑中的一种。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。此外,终端102与服务器104之间通过网络建立通信连接,网络具体可以是广域网、局域网、城域网中的任意一种。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是适用于本申请方案的一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的设备。例如,图1中仅示出1个服务器。可以理解的是,该内容分发网络的调度测试系统还可以包括一个或多个其他设备,具体此处不作限定。另外,该内容分发网络的调度测试系统还可以包括存储器,用于存储数据,如存储各个CDN节点的监控数据。
还需说明的是,图1所示的内容分发网络的调度测试系统的场景示意图仅仅是一个示例,本发明实施例描述的内容分发网络的调度测试系统以及场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着内容分发网络的调度测试系统的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
参阅图2,本申请实施例提供了一种内容分发网络的调度测试方法,本实施例主要以该方法应用于上述图1中的服务器104来举例说明,该方法包括步骤S201至S204,具体如下:
S201,获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据。
其中,内容分发网络(Content Delivery Network,CDN)是构建并覆盖在现有承载网(承载网是各运营商以IP技术构建的一张专网,用于承载对传输质量要求较高的业务)之上,由分布在不同区域的边缘节点服务器组成的分布式网络。通常,在进行CDN调度时,需要合理的调度CDN节点提供服务。如果被调度的CDN节点存在服务能力弱,或者负载过高等问题,则会严重影响服务质量,导致用户的使用体验差,因此对CDN调度功能的测试重要性不言而喻,本申请实施例即提供了一种能够对CDN调度功能进行合理测试的方法及装置。
其中,待测CDN节点可以是指待测试CDN调度功能是否符合预期的CDN节点,CDN节点可以是不同区域的边缘节点服务器,提供基于CDN的边缘弹性基础设施,可将计算、转发等业务下沉至边缘。
其中,测试任务信息包含有测试策略,测试策略记录有满足不同类型测试的测试需求,如功能测试、预发布测试、指定场景下的测试等。
具体实现中,服务器104在监控时序数据之前,需获取监控数据,而监控数据可以是终端102获取后转发至服务器104的,也可以是其他设备获取后通过终端102转发至服务器104的,获取方式包括但不局限于如下几种方式之一:1、在普通网络结构中,服务器104从终端102或其他建立有网络连接的云设备处接收监控数据;2、在预置的区块链网络中,服务器104可从其他终端节点或服务器节点处同步获取监控数据,该区块链网络可以是公有链、私有链等;3、在预置的树状结构中,服务器104可从上级服务器请求得到初始地址文本,或是从下级服务器轮询得到监控数据。
具体而言,可参阅图3,服务器104内置有数据仿真模拟器、CDN监控系统、CDN调度模块等,监控数据来源于线上CDN监控系统,线上CDN监控系统不存在于服务器104中。服务器104通过预设接口采集到线上CDN监控系统中归属于各待测CDN节点的监控数据之后,即可基于预设的测试任务信息,对监控数据进行时序调整、修改,得到监控时序数据之后,再将监控时序数据输入至数据仿真模拟器,由数据仿真模拟器对监控时序数据进行模拟仿真,进而将仿真结果(也称仿真数据)输入至CDN监控系统,由测试环境下的CDN监控系统指示CDN调度模块分析该仿真数据,具体步骤将在下文详细说明。
在一个实施例中,可参阅图4,步骤S201包括:S2011,获取各待测CDN节点的监控数据;S2012,按照预设的时刻粒度,划分监控数据,并对划分后的监控数据进行时序调整,得到时序调整后的监控数据;S2013,根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据。
其中,时刻粒度可以是具体到任意时间单位的粒度大小,例如,时刻粒度为“日”、“时”、“分”、“秒”、“毫秒”等,具体本申请不做限定。
其中,监控数据可以是包含带宽(或流量)和物理容量占比的数据。
具体实现中,服务器104获取到各个待测CDN节点的监控数据之后,可按照预设的时刻粒度,将所有的监控数据进行时刻划分,即归属于同一时刻的监控数据进行单独存储,如存储在同一张excel表格上,或是转换为其他格式的文件形式,如逗号分隔值文件格式。然后,再对划分后得监控数据进行升序或降序的时序调整,得到时序调整后的监控数据。进一步地,再根据测试任务信息,对时序调整后的监控数据进行修改,如增加或删除一些目标数值或信息,即可得到可作为后续处理依据的监控时序数据。
具体而言,对监控数据进行时刻划分,其目的在于细分颗粒度的处理或管理监控数据,又便于后续根据测试任务信息高精度的处理监控数据,以及观察数据,使得对CDN调度功能的测试更加精准;对监控数据进行时序调整,其目的在于可有利于观察一定趋势下某一时刻的决策更优,进而便于对CDN调度功能的逐步优化;对监控数据进行修改,其目的在于可依据测试任务,全局对CDN的调度进行功能测试、或者预发布测试、或者对特定场景的模拟演练,如此即可有效覆盖多数异常或指定场景,以及节点机房、节点机房内资源的新增或删除场景等。
在一个实施例中,可参阅图5,步骤S2013包括:S20131,确定测试任务信息对应的目标数值;S20132,基于目标数值,修改时序调整后的监控数据,得到监控时序数据;其中,目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量;其中,节点带宽容量为对应待测CDN节点的带宽可用容量。
其中,目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量。例如,节点带宽容量是指每个边缘节点服务器的可用总带宽(或者流量)“22G”(对应流量增加率为“165000000000”),目标数值若是大于“22G”的流量数值,则代表需要测试一种需求大于可用资源的异常场景;若新增了一个节点带宽容量“22G”或者“20G”等其他数值,则代表需要测试一种节点新增的特殊场景;若原有的一个节点带宽数值转变为“0”,则代表需要测试一种节点删除的特殊场景。
具体实现中,服务器104在分析处理得到时序调整后的监控数据之后,可进一步解析测试任务信息,以确定该测试任务信息中携带的目标数值,进而分析如何利用该目标数值修改时序调整后的监控数据。可以理解的是,测试任务信息中不仅仅携带有目标数值,还有目标数值作用的对象,如目标数值为大于节点带宽容量的流量数值,则可通过为目标数值绑定标识来指明其作用的对象,即节点带宽容量。又如,目标数值为新增的节点带宽容量,也可通过为目标数值绑定标识来指明其作用的对象。需要说明的是,上文所述的标识可以是对应待测CDN节点的节点标识。
S202,调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
其中,软件工程中的测试用例是一组条件或变量,测试者可根据测试用例来确定应用软件或软件系统是否正确工作。
具体实现中,服务器104为获取用于测试CDN调度功能在指定场景下是否能够提供合理决策的仿真数据,可先利用测试任务信息筛选出目标测试用例,然后调用该目标测试用例分析监控时序数据,分析载体可以是数据仿真模拟器。如此,即可拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。其中,数据仿真模拟器可以基于http协议服务形式提供访问,另外也提供与线上基本一致的数据库访问,其中保存着节点容量信息。
在一个实施例中,可参阅图6,步骤S202包括:S2021,在预存的多个候选测试用例中,筛选出与测试任务信息关联的候选测试用例,作为目标测试用例;S2022,调用目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
其中,服务器104预存的多个测试用例即为候选测试用例。
具体实现中,服务器104中可预存有多个测试用例,不同的测试用例用于执行不同的测试任务信息,服务器104分析获取到各个待测CDN节点的监控时序数据之后,即可根据当前的测试任务信息,从预存的多个测试用例中筛选出与该测试任务信息关联的测试用例,作为目标测试用例。然后,将目标测试用例和监控时序数据导入数据仿真模拟器之中,以使数据仿真模拟器拟仿真出各待测CDN节点在对应场景下的带宽用量情况,即可得到仿真数据。如此,测试环境下的CDN监控系统仅需将数据源指向数据仿真模拟器,即可获得仿真数据。
S203,根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据。
其中,调度决策数据可包含用户请求路由与边缘节点访问之间的映射关系。
具体实现中,服务器104的测试环节,可具体到满足于用户需求的测试精度,即服务器104中可内设有不同测试精度的模块,服务器104在获取到仿真数据之后,即可在与现网环境隔离的CDN测试环境下,基于不同精度的模块对待测CDN节点的资源调度过程进行测试,即可得到满足于用户需求的调度决策数据,从而便于后续验证调度决策数据是否符合预期。
需要说明的是,通过分析调度决策数据,获取测试域名在全国各个地区、各个运营商解析出的IP,并将IP转化为对应的CDN节点,这样就能得知调度决策随仿真流量变化而变化的过程。如此,即可在后续优化CDN调度性能的环节中更加高效、精准地摸索出最优决策数据,最大化改善CDN的调度性能。
在一个实施例中,可参阅图7,步骤S203包括:S2031,根据测试任务信息,确定目标测试环境;S2032,在目标测试环境下,根据仿真数据,对各待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,得到调度决策数据;其中,目标测试环境包括DNS调度测试环境和302调度测试环境。
其中,DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS做省市级别和跨运营商的调度,302做基于内容和精确IP的精确调度。
具体实现中,可参阅图3,测试任务信息包含有测试策略,测试策略则记录有满足不同类型测试的测试需求,即目标测试环境。服务器104在解析测试任务信息,确定了目标测试环境之后,即可在该目标测试环境下,通过调度服务器104内设的DNS调度模块或者302调度模块,来分析仿真数据,以对各个待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,解析出在该目标测试环境下的调度决策数据。
S204,验证调度决策数据,用以判断是否调试内容分发网络的调度性能。
具体实现中,验证调度决策数据是指验证调度决策数据是否符合预期。服务器104获取到调度决策数据之后,即可分析其以判断是否调试内容分发网络的调度性能。分析过程将在下文详细说明,分析结果可传输至终端显示。
在一个实施例中,可参阅图8,步骤S204包括:S2041,验证调度决策数据是否与预设的预期决策数据相匹配;S2042,若是,则生成测试成功信息,并将测试成功信息发送至终端,用以提示终端无需对内容分发网络的调度性能进行调试;S2043,若否,则生成测试失败信息,并将测试失败信息发送至终端,用以指示终端对内容分发网络的调度性能进行调试。
具体实现中,服务器104可将调度决策数据与预期决策数据进行比对,以判断调度决策数据与预期决策数据是否匹配、相匹配的程度是多少;若相匹配的程度值大于或等于预设的匹配度阈值,则可生成测试成功信息,并将测试成功信息发送至终端,提示终端当前各待测CDN节点的调度性能无需进行优化调试;若相匹配的程度值小于预设的匹配度阈值,则可生成测试失败信息,同时可将测试失败信息发送至终端,提示终端当前各待测CDN节点的调度性能需要进行优化调试。如此,服务器104可实时,或周期性掌握待测CDN节点的调度性能,使其调度决策满足于用户需求;又或是根据实际发生的特殊情况,测试CDN是否具备高效的调度功能,避免CDN调度性能无法满足用户需求的情况发生。
在一个实施例中,可参阅图9,内容分发网络的调度测试方法还包括:S901,获取各待测CDN节点的健康检查数据和访问延迟数据;S902,调用与测试任务信息关联的目标测试用例,分析健康检查数据、访问延迟数据以及监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
其中,健康检查数据可以是包含节点所处环境、节点硬件、节点运行错误报告、节点繁忙程度等参数的检查结果。节点所处环境的检查结果可以包括服务器和所在机柜温度、服务器供电电压、网络设备供电电压等的检查结果;节点硬件的检查结果可以包括设备故障灯是否有亮、硬盘、风扇异响、电缆破损灯的检查结果。
其中,访问延迟数据可以是指节点响应请求的时长是否存在延迟的数据。
具体实现中,服务器104对内容分发网络的调度测试,不仅可涉及流量数据或带宽数据这类调度关心的数据,还可细化到健康检查数据和访问延迟数据,即将健康检查数据和访问延迟数据连同监控数据一起进行时序编排,作为一起输入至数据仿真模拟器中的初始数据,再进行响应的测试,如此得到的调度决策数据,其维度不仅在于带宽或流量,还在于节点自身的软件或硬件状态,使得对CDN调度功能的测试也更加精确,为后续CDN调度功能的调试提供了更加合理准确的参考依据。
上述实施例中,服务器通过获取内容分发网络中各个待测CDN节点的监控时序数据,并调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,即可得到仿真数据来对各待测CDN节点的资源调度过程进行测试,从而得到调度决策数据,最终验证该调度决策数据,即可用以判断是否调试内容分发网络的调度性能。由此,通过获取满足于测试任务的监控时序数据来对CDN调度功能进行任意场景的针对性测试,无需对源代码进行侵入式改造,也无需过分依赖于无异的现网数据,即可有效覆盖现有方案无法满足的诸多场景,进而有效提升测试结果的可靠性,同时为后续CDN调度性能的调整提供精准依据,使得CDN调度更加精准高效。
应该理解的是,虽然图2-图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图9中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
为了更好实施本申请实施例提供的内容分发网络的调度测试方法,在本申请实施例所提出的内容分发网络的调度测试方法的基础之上,本申请实施例中还提供了一种内容分发网络的调度测试装置,如图10所示,该内容分发网络的调度测试装置1000包括:
数据获取模块1010,用于获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
模拟仿真模块1020,用于调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
调度测试模块1030,用于根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据;
决策验证模块1040,用于验证调度决策数据,用以判断是否调试内容分发网络的调度性能。
在一个实施例中,数据获取模块1010还用于获取各待测CDN节点的监控数据;按照预设的时刻粒度,划分监控数据,并对划分后的监控数据进行时序调整,得到时序调整后的监控数据;根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据。
在一个实施例中,数据获取模块1010还用于确定测试任务信息对应的目标数值;基于目标数值,修改时序调整后的监控数据,得到监控时序数据;其中,目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量;其中,节点带宽容量为对应待测CDN节点的带宽可用容量。
在一个实施例中,模拟仿真模块1020还用于在预存的多个候选测试用例中,筛选出与测试任务信息关联的候选测试用例,作为目标测试用例;调用目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在一个实施例中,调度测试模块1030还用于根据测试任务信息,确定目标测试环境;在目标测试环境下,根据仿真数据,对各待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,得到调度决策数据;其中,目标测试环境包括DNS调度测试环境和302调度测试环境。
在一个实施例中,内容分发网络的调度测试装置还包括高精仿真模块,用于获取各待测CDN节点的健康检查数据和访问延迟数据;调用与测试任务信息关联的目标测试用例,分析健康检查数据、访问延迟数据以及监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在一个实施例中,决策验证模块1040还用于验证调度决策数据是否与预设的预期决策数据相匹配;若是,则生成测试成功信息,并将测试成功信息发送至终端,用以提示终端无需对内容分发网络的调度性能进行调试;若否,则生成测试失败信息,并将测试失败信息发送至终端,用以指示终端对内容分发网络的调度性能进行调试。
上述实施例中,服务器通过获取内容分发网络中各个待测CDN节点的监控时序数据,并调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,即可得到仿真数据来对各待测CDN节点的资源调度过程进行测试,从而得到调度决策数据,最终验证该调度决策数据,即可用以判断是否调试内容分发网络的调度性能。由此,通过获取满足于测试任务的监控时序数据来对CDN调度功能进行任意场景的针对性测试,无需对源代码进行侵入式改造,也无需过分依赖于无异的现网数据,即可有效覆盖现有方案无法满足的诸多场景,进而有效提升测试结果的可靠性,同时为后续CDN调度性能的调整提供精准依据,使得CDN调度更加精准高效。
在一个实施例中,本申请实施例还提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储标识信息和设备信息。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时实现一种内容分发网络的调度测试方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据;
验证调度决策数据,用以判断是否调试内容分发网络的调度性能。
在一个实施例中,获取内容分发网络中各个待测CDN节点的监控时序数据,包括:获取各待测CDN节点的监控数据;按照预设的时刻粒度,划分监控数据,并对划分后的监控数据进行时序调整,得到时序调整后的监控数据;根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据。
在一个实施例中,根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据,包括:确定测试任务信息对应的目标数值;基于目标数值,修改时序调整后的监控数据,得到监控时序数据;其中,目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量;其中,节点带宽容量为对应待测CDN节点的带宽可用容量。
在一个实施例中,调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据,包括:在预存的多个候选测试用例中,筛选出与测试任务信息关联的候选测试用例,作为目标测试用例;调用目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在一个实施例中,根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据,包括:根据测试任务信息,确定目标测试环境;在目标测试环境下,根据仿真数据,对各待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,得到调度决策数据;其中,目标测试环境包括DNS调度测试环境和302调度测试环境。
在一个实施例中,在获取内容分发网络中各个待测CDN节点的监控时序数据之后,还包括:获取各待测CDN节点的健康检查数据和访问延迟数据;调用与测试任务信息关联的目标测试用例,分析健康检查数据、访问延迟数据以及监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在一个实施例中,验证调度决策数据,用以判断是否调试内容分发网络的调度性能,包括:验证调度决策数据是否与预设的预期决策数据相匹配;若是,则生成测试成功信息,并将测试成功信息发送至终端,用以提示终端无需对内容分发网络的调度性能进行调试;若否,则生成测试失败信息,并将测试失败信息发送至终端,用以指示终端对内容分发网络的调度性能进行调试。
上述实施例中,服务器通过获取内容分发网络中各个待测CDN节点的监控时序数据,并调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,即可得到仿真数据来对各待测CDN节点的资源调度过程进行测试,从而得到调度决策数据,最终验证该调度决策数据,即可用以判断是否调试内容分发网络的调度性能。由此,通过获取满足于测试任务的监控时序数据来对CDN调度功能进行任意场景的针对性测试,无需对源代码进行侵入式改造,也无需过分依赖于无异的现网数据,即可有效覆盖现有方案无法满足的诸多场景,进而有效提升测试结果的可靠性,同时为后续CDN调度性能的调整提供精准依据,使得CDN调度更加精准高效。
在一个实施例中,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取内容分发网络中各个待测CDN节点的监控时序数据;其中,监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据;
验证调度决策数据,用以判断是否调试内容分发网络的调度性能。
在一个实施例中,获取内容分发网络中各个待测CDN节点的监控时序数据,包括:获取各待测CDN节点的监控数据;按照预设的时刻粒度,划分监控数据,并对划分后的监控数据进行时序调整,得到时序调整后的监控数据;根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据。
在一个实施例中,根据预设的测试任务信息,修改时序调整后的监控数据,得到监控时序数据,包括:确定测试任务信息对应的目标数值;基于目标数值,修改时序调整后的监控数据,得到监控时序数据;其中,目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量;其中,节点带宽容量为对应待测CDN节点的带宽可用容量。
在一个实施例中,调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据,包括:在预存的多个候选测试用例中,筛选出与测试任务信息关联的候选测试用例,作为目标测试用例;调用目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在一个实施例中,根据仿真数据,对各待测CDN节点的资源调度过程进行测试,得到调度决策数据,包括:根据测试任务信息,确定目标测试环境;在目标测试环境下,根据仿真数据,对各待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,得到调度决策数据;其中,目标测试环境包括DNS调度测试环境和302调度测试环境。
在一个实施例中,在获取内容分发网络中各个待测CDN节点的监控时序数据之后,还包括:获取各待测CDN节点的健康检查数据和访问延迟数据;调用与测试任务信息关联的目标测试用例,分析健康检查数据、访问延迟数据以及监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
在一个实施例中,验证调度决策数据,用以判断是否调试内容分发网络的调度性能,包括:验证调度决策数据是否与预设的预期决策数据相匹配;若是,则生成测试成功信息,并将测试成功信息发送至终端,用以提示终端无需对内容分发网络的调度性能进行调试;若否,则生成测试失败信息,并将测试失败信息发送至终端,用以指示终端对内容分发网络的调度性能进行调试。
上述实施例中,服务器通过获取内容分发网络中各个待测CDN节点的监控时序数据,并调用与测试任务信息关联的目标测试用例分析监控时序数据,以模拟仿真出各待测CDN节点在对应场景下的带宽用量情况,即可得到仿真数据来对各待测CDN节点的资源调度过程进行测试,从而得到调度决策数据,最终验证该调度决策数据,即可用以判断是否调试内容分发网络的调度性能。由此,通过获取满足于测试任务的监控时序数据来对CDN调度功能进行任意场景的针对性测试,无需对源代码进行侵入式改造,也无需过分依赖于无异的现网数据,即可有效覆盖现有方案无法满足的诸多场景,进而有效提升测试结果的可靠性,同时为后续CDN调度性能的调整提供精准依据,使得CDN调度更加精准高效。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上对本申请实施例所提供的一种内容分发网络的调度测试方法、装置及计算机设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种内容分发网络的调度测试方法,其特征在于,包括:
获取内容分发网络中各个待测CDN节点的监控时序数据;其中,所述监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
调用与所述测试任务信息关联的目标测试用例分析所述监控时序数据,以模拟仿真出各所述待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
根据所述仿真数据,对各所述待测CDN节点的资源调度过程进行测试,得到调度决策数据;
验证所述调度决策数据,用以判断是否调试所述内容分发网络的调度性能。
2.如权利要求1所述的方法,其特征在于,所述获取内容分发网络中各个待测CDN节点的监控时序数据,包括:
获取各所述待测CDN节点的监控数据;
按照预设的时刻粒度,划分所述监控数据,并对划分后的监控数据进行时序调整,得到时序调整后的监控数据;
根据预设的测试任务信息,修改所述时序调整后的监控数据,得到所述监控时序数据。
3.如权利要求2所述的方法,其特征在于,所述根据预设的测试任务信息,修改所述时序调整后的监控数据,得到所述监控时序数据,包括:
确定所述测试任务信息对应的目标数值;
基于所述目标数值,修改所述时序调整后的监控数据,得到所述监控时序数据;其中,所述目标数值包括但不局限于大于节点带宽容量的流量数值、新增的节点带宽容量、归零的节点带宽容量;
其中,所述节点带宽容量为对应所述待测CDN节点的带宽可用容量。
4.如权利要求1所述的方法,其特征在于,所述调用与所述测试任务信息关联的目标测试用例分析所述监控时序数据,以模拟仿真出各所述待测CDN节点在对应场景下的带宽用量情况,得到仿真数据,包括:
在预存的多个候选测试用例中,筛选出与所述测试任务信息关联的候选测试用例,作为所述目标测试用例;
调用所述目标测试用例分析所述监控时序数据,以模拟仿真出各所述待测CDN节点在对应场景下的带宽用量情况,得到所述仿真数据。
5.如权利要求1所述的方法,其特征在于,所述根据所述仿真数据,对各所述待测CDN节点的资源调度过程进行测试,得到调度决策数据,包括:
根据所述测试任务信息,确定目标测试环境;
在所述目标测试环境下,根据所述仿真数据,对各所述待测CDN节点响应于用户的资源请求进行资源调度的过程进行测试,得到所述调度决策数据;
其中,所述目标测试环境包括DNS调度测试环境和302调度测试环境。
6.如权利要求1所述的方法,其特征在于,在所述获取内容分发网络中各个待测CDN节点的监控时序数据之后,还包括:
获取各所述待测CDN节点的健康检查数据和访问延迟数据;
调用与所述测试任务信息关联的目标测试用例,分析所述健康检查数据、所述访问延迟数据以及所述监控时序数据,以模拟仿真出各所述待测CDN节点在对应场景下的带宽用量情况,得到仿真数据。
7.如权利要求1所述的方法,其特征在于,所述验证所述调度决策数据,用以判断是否调试所述内容分发网络的调度性能,包括:
验证所述调度决策数据是否与预设的预期决策数据相匹配;
若是,则生成测试成功信息,并将所述测试成功信息发送至终端,用以提示所述终端无需对所述内容分发网络的调度性能进行调试;
若否,则生成测试失败信息,并将所述测试失败信息发送至终端,用以指示所述终端对所述内容分发网络的调度性能进行调试。
8.一种内容分发网络的调度测试装置,其特征在于,包括:
数据获取模块,用于获取内容分发网络中各个待测CDN节点的监控时序数据;其中,所述监控时序数据是根据测试任务信息进行时序调整修改后的监控数据;
模拟仿真模块,用于调用与所述测试任务信息关联的目标测试用例分析所述监控时序数据,以模拟仿真出各所述待测CDN节点在对应场景下的带宽用量情况,得到仿真数据;
调度测试模块,用于根据所述仿真数据,对各所述待测CDN节点的资源调度过程进行测试,得到调度决策数据;
决策验证模块,用于验证所述调度决策数据,用以判断是否调试所述内容分发网络的调度性能。
9.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储器;以及一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求1至7中任一项所述的内容分发网络的调度测试方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述内容分发网络的调度测试方法中的步骤。
CN202210764295.4A 2022-06-29 2022-06-29 内容分发网络的调度测试方法、装置及计算机设备 Pending CN117370127A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210764295.4A CN117370127A (zh) 2022-06-29 2022-06-29 内容分发网络的调度测试方法、装置及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210764295.4A CN117370127A (zh) 2022-06-29 2022-06-29 内容分发网络的调度测试方法、装置及计算机设备

Publications (1)

Publication Number Publication Date
CN117370127A true CN117370127A (zh) 2024-01-09

Family

ID=89393349

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210764295.4A Pending CN117370127A (zh) 2022-06-29 2022-06-29 内容分发网络的调度测试方法、装置及计算机设备

Country Status (1)

Country Link
CN (1) CN117370127A (zh)

Similar Documents

Publication Publication Date Title
CN105335293B (zh) 一种基于接口并行的自动化测试系统和方法
Aktas et al. Provenance aware run‐time verification of things for self‐healing Internet of Things applications
US10229039B2 (en) Testing a virtual network function by a virtual network tester
CN104579822B (zh) 基于Http协议的移动应用自动化性能测试系统及方法
US9672137B1 (en) Shadow test replay service
CN112311893B (zh) 跨区域、业务、系统数据服务中间件及数据验证方法
CN110096396B (zh) 分组测试的控制方法、分布式应用系统及存储介质
CN110515855B (zh) 一种应用程序的模拟控制方法、服务器及系统
CN106919511B (zh) 应用的模拟方法、模拟应用及其运作方法以及模拟系统
CN113127356A (zh) 压测方法、装置、电子设备及存储介质
CN111611140A (zh) 埋点数据的上报验证方法、装置、电子设备及存储介质
CN102622292A (zh) 一种基于标准化测试语言的Web应用功能测试方法
RU2532714C2 (ru) Способ получения данных при оценке ресурсов сети и устройство для осуществления способа
CN109274533B (zh) 一种基于规则引擎的Web服务故障的定位装置和方法
CN109587349B (zh) 多媒体坐席线路测试方法及装置、电子设备、存储介质
CN117370127A (zh) 内容分发网络的调度测试方法、装置及计算机设备
CN116467188A (zh) 一种多环境场景下的通用本地复现系统和方法
CN114385498A (zh) 性能测试方法、系统、计算机设备及可读存储介质
CN112527453B (zh) 虚拟化信息仿真系统、方法及计算机可读存储介质
CN114721969A (zh) 接口自动化测试数据和测试代码分离的方法及装置
US9479579B2 (en) Grouping processing method and system
CN103414649B (zh) 一种分布式负载发生器的实现方法及其系统
CN101621426B (zh) 一种内容分发网络节点的运行仿真系统及实现方法
CN111078534B (zh) 一种测试调度方法和相关设备
CN114286378B (zh) 一种自组网无线通信设备网络性能测试系统及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination