CN115237727B - 最拥堵子链路的确定方法、装置、电子设备及存储介质 - Google Patents
最拥堵子链路的确定方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115237727B CN115237727B CN202211147417.1A CN202211147417A CN115237727B CN 115237727 B CN115237727 B CN 115237727B CN 202211147417 A CN202211147417 A CN 202211147417A CN 115237727 B CN115237727 B CN 115237727B
- Authority
- CN
- China
- Prior art keywords
- value
- time consumption
- operation time
- node
- sublink
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000009825 accumulation Methods 0.000 claims abstract description 24
- 238000012795 verification Methods 0.000 claims description 44
- 238000001514 detection method Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 abstract description 20
- 238000010586 diagram Methods 0.000 description 9
- 238000005457 optimization Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 210000001503 joint Anatomy 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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 for performance assessment
- G06F11/3419—Recording 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 for performance assessment by assessing time
- G06F11/3423—Recording 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 for performance assessment by assessing time where the assessed time is active or idle time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3452—Performance evaluation by statistical analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种最拥堵子链路的确定方法、装置、电子设备及存储介质,其中方法包括:获取与被监测链路中各个节点的运行耗时值,计算得到耗时偏差值,以起始位置的节点为子链路的起始节点,将起始节点的运行耗时偏差值与起始节点之后的下一节点的运行耗时偏差值相加得到校验值;若校验值小于预设的校验值阈值,对校验值进行更新,以起始节点之后的第二个节点为新子链路的起始节点,返回累加步骤,直至被监测链路中的所有节点完成相加;从第一存储空间中获取目标校验值,根据目标校验值确定第二存储空间中的一子链路为最拥堵子链路。本发明确定最拥堵子链的过程简便,所需要的算力资源少,确定最拥堵子链路的效率高。
Description
技术领域
本发明实施例涉及程序运行监测技术领域,尤其涉及一种最拥堵子链路的确定方法、装置、电子设备及存储介质。
背景技术
当前,对于应用程序的性能优化主要针对拥堵位点,例如:某一行拥堵的代码,而缺乏对拥堵链路的优化(实践中,部分拥堵位点的形成原因是其所在链路本身性能差),使得性能优化效果差,优化之后仅单一位点性能提升,但应用程序的整体性能没有明显提升。
由此,确定最拥堵子链路是应用程序性能优化的重要步骤。现有的最拥堵子链路的确定方法均为通过直接解算确定最拥堵子链路,所需要的算力资源多,确定最拥堵子链路的效率低。
发明内容
本发明实施例提供一种最拥堵子链路的确定方法、装置、电子设备及存储介质,以解决现有的最拥堵子链路的确定方法均为通过直接解算确定最拥堵子链路,所需要的算力资源多,确定最拥堵子链路的效率低的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种最拥堵子链路的确定方法,包括:
第一获取步骤:获取与应用程序的被监测链路中各个节点一一对应的运行耗时值,根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,所述运行耗时偏差值用于指示各个节点的所述运行耗时值相对所有节点的所述运行耗时值的偏差程度;
前设步骤:以所述被监测链路中位于起始位置的节点为子链路的起始节点;
累加步骤:检测是否存在历史的校验值,得到检测结果;若所述检测结果为不存在,将所述起始节点的运行耗时偏差值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到所述校验值;若所述检测结果为存在,将历史的所述校验值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到新的所述校验值;
检查步骤:检查预分配的第一存储空间是否已存储有目标校验值,得到检查结果;若所述检查结果为未存储有所述目标校验值,将所述校验值作为所述目标校验值存储至所述第一存储空间;若所述检查结果为存储有所述目标校验值,且所述校验值大于所述目标校验值,将所述校验值作为新的目标校验值存储至所述第一存储空间以更新所述目标校验值,确定所述下一节点为当前子链路的终止节点,将当前子链路的信息存储至预分配的第二存储空间;
校验步骤:校验所述校验值是否小于预设的校验值阈值,得到校验结果;
第一执行步骤:若所述校验结果为所述校验值小于所述预设的校验值阈值,对所述校验值进行更新,使得更新之后的所述校验值与所述预设的校验阈值相等;以所述起始节点之后的第二个节点为新子链路的起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
第二执行步骤:若所述校验结果为所述校验值大于或者等于所述预设的校验值阈值,以所述下一节点为新的所述起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
确定步骤:从所述第一存储空间中获取所述目标校验值,根据所述目标校验值确定所述第二存储空间中的一子链路为最拥堵子链路。
可选地,
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值,计算得到所有节点的平均运行耗时值;
计算各个节点的所述运行耗时值与所述平均运行耗时值之间的差值为所述运行耗时偏差值。
可选地,
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值计算得到P99值,所述P99值为大于或者等于99%的所述运行耗时值的数值;
计算各个节点的所述运行耗时值与所述P99值之间的差值为所述运行耗时偏差值。
可选地,
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值,得到所有节点的所述运行耗时值的中位值;
计算各个节点的所述运行耗时值与所述中位值之间的差值为所述运行耗时偏差值。
可选地,
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值计算得到P90值,所述P90值为大于或者等于90%的所述运行耗时值的数值;
计算各个节点的所述运行耗时值与所述P90值之间的差值为所述运行耗时偏差值。
可选地,
所述确定步骤之后包括:
从所述第二存储空间中获取所述最拥堵子链路的信息,并采用返回拥堵链路数据接口将所述最拥堵子链路的信息发送给用户。
可选地,
所述第一获取步骤包括:
从接收链路数据接口获取与被监测链路中各个节点一一对应的运行耗时值。
第二方面,本发明实施例提供了一种最拥堵子链路的确定装置,包括:
获取模块,用于第一获取步骤:获取与应用程序的被监测链路中各个节点一一对应的运行耗时值,根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,所述运行耗时偏差值用于指示各个节点的所述运行耗时值相对所有节点的所述运行耗时值的偏差程度;
执行模块,用于前设步骤:以所述被监测链路中位于起始位置的节点为子链路的起始节点;
所述执行模块,还用于累加步骤:检测是否存在历史的校验值,得到检测结果;若所述检测结果为不存在,将所述起始节点的运行耗时偏差值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到所述校验值;若所述检测结果为存在,将历史的所述校验值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到新的所述校验值;
所述执行模块,还用于检查步骤:检查预分配的第一存储空间是否已存储有目标校验值,得到检查结果;若所述检查结果为未存储有所述目标校验值,将所述校验值作为所述目标校验值存储至所述第一存储空间;若所述检查结果为存储有所述目标校验值,且所述校验值大于所述目标校验值,将所述校验值作为新的目标校验值存储至所述第一存储空间以更新所述目标校验值,确定所述下一节点为当前子链路的终止节点,将当前子链路的信息存储至预分配的第二存储空间;
校验模块,用于校验步骤:校验所述校验值是否小于预设的校验值阈值,得到校验结果;
所述执行模块,还用于第一执行步骤:若所述校验结果为所述校验值小于所述预设的校验值阈值,对所述校验值进行更新,使得更新之后的所述校验值与所述预设的校验阈值相等;以所述起始节点之后的第二个节点为新子链路的起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
所述执行模块,还用于第二执行步骤:若所述校验结果为所述校验值大于或者等于所述预设的校验值阈值,以所述下一节点为新的所述起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
所述执行模块,还用于确定步骤:从所述第一存储空间中获取所述目标校验值,根据所述目标校验值确定所述第二存储空间中的一子链路为最拥堵子链路。
第三方面,本发明实施例提供了一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面中任一项所述的最拥堵子链路的确定方法中的步骤。
第四方面,本发明实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面中任一项所述的最拥堵子链路的确定方法中的步骤。
在本发明实施例中,通过第一获取步骤、前设步骤、累加步骤、检查步骤、校验步骤、第一执行步骤、第二执行步骤及确定步骤,将运行耗时偏差值累加得到校验值,并根据对校验值的校验结果确定被监测链路中的各个子链路,进一步根据校验值从各个子链路中的确定最拥堵子链路,无需通过直接解算确定最拥堵子链路,本发明实施例确定最拥堵子链的过程简便,所需要的算力资源少,确定最拥堵子链路的效率高。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例最拥堵子链路的确定方法的流程示意图;
图2为应用本发明实施例最拥堵子链路的确定方法的时序交互示意图;
图3为应用本发明实施例最拥堵子链路的确定方法的系统架构示意图;
图4为应用本发明实施例最拥堵子链路的确定方法的流程示意图;
图5为本发明实施例最拥堵子链路的确定装置的原理框图;
图6为本发明实施例电子设备的原理框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是所有的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种最拥堵子链路的确定方法,参见图1所示,图1为本发明实施例最拥堵子链路的确定方法的流程示意图,最拥堵子链路的确定方法包括:
第一获取步骤11:获取与应用程序的被监测链路中各个节点一一对应的运行耗时值,根据运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,运行耗时偏差值用于指示各个节点的运行耗时值相对所有节点的运行耗时值的偏差程度;
前设步骤12:以被监测链路中位于起始位置的节点为子链路的起始节点;
累加步骤13:检测是否存在历史的校验值,得到检测结果;若检测结果为不存在,将起始节点的运行耗时偏差值与起始节点之后的下一节点的运行耗时偏差值相加,得到校验值;若检测结果为存在,将历史的校验值与起始节点之后的下一节点的运行耗时偏差值相加,得到新的校验值;
检查步骤14:检查预分配的第一存储空间是否已存储有目标校验值,得到检查结果;若检查结果为未存储有目标校验值,将校验值作为目标校验值存储至第一存储空间;若检查结果为存储有目标校验值,且校验值大于目标校验值,将校验值作为新的目标校验值存储至第一存储空间以更新目标校验值,确定下一节点为当前子链路的终止节点,将当前子链路的信息存储至预分配的第二存储空间;
校验步骤15:校验校验值是否小于预设的校验值阈值,得到校验结果;
第一执行步骤16:若校验结果为校验值小于预设的校验值阈值,对校验值进行更新,使得更新之后的校验值与预设的校验阈值相等;以起始节点之后的第二个节点为新子链路的起始节点,返回累加步骤,直至被监测链路中的所有节点完成相加;
第二执行步骤17:若校验结果为校验值大于或者等于预设的校验值阈值,以下一节点为新的起始节点,返回累加步骤,直至被监测链路中的所有节点完成相加;
确定步骤18:从第一存储空间中获取目标校验值,根据目标校验值确定第二存储空间中的一子链路为最拥堵子链路。
本发明的一些实施例中,可选地,节点可以是应用程序中的各个步骤,示例性的,财务业务程序中的扣款步骤、付款步骤,巡单步骤及支付风险校验步骤。
本发明的一些实施例中,可选地,节点可以是应用程序中步骤的各个代码,示例性的,对于财务系统中的扣款步骤,节点可以是扣款步骤中的校验支付方信息的代码、确认用户支付渠道的代码及校验被支付方信息的代码。
本发明的一些实施例中,可选地,预设的校验值阈值为0。
本发明的一些实施例中,可选地,将当前子链路的信息存储至预分配的第二存储空间,其中:当前子链路的信息至少包括:当前子链路的起始节点及当前子链路的终止节点。
示例性的,参见图2所示,图2为应用本发明实施例最拥堵子链路的确定方法的时序交互示意图,其中:第一步,对接方推送链路节点与耗时数据至拥堵计算服务接口;第二步,确认已接收到之后,拥堵计算服务接口同步返回接收数据成功的指令至对接方;第三步,拥堵计算服务计算模块通过拥堵计算服务接口获取链路节点与耗时数据,并根据链路节点与耗时数据进行拥堵计算;第四步,拥堵计算服务计算模块返回拥堵计算结果(拥堵子链路与拥堵值)至拥堵计算服务接口;第五步,拥堵计算服务接口异步返回计算结果(拥堵子链路与拥堵值)至对接方。
参见图3所示,图3为应用本发明实施例最拥堵子链路的确定方法的系统架构示意图,其中,接口层:对外提供接口,用于与对接方交互,主要是:接收对接方推送的全链路数据;异步回调给对接方拥堵计算的结果;拥堵计算模块:核心模块,主要实现:全链路各节点的拥堵值计算以及最拥堵子链路的计算;数据存储层:存储全链路数据和计算过程中中间结果和最终结果。
参见图4所示,图4为应用本发明实施例最拥堵子链路的确定方法的流程示意图,包括步骤(1)至(4):
(1)接收链路数据接口
请求类型:post;
接口地址:/jamserver/push/datas;
数据格式:json,全链路节点名和相应耗时时间(相当于本发明实施例中的运行耗时值),耗时时间单位为毫秒,示例:{“datas”:{“node1”:200,“node2”:200,“node1”:200,“node3”:200,“node4”:200 ……,“nodeN”:200}};
接收成功后返回码为0000,表示成功,示例:{“code”:0000}。
(2)各节点拥堵值计算
设节点node1的耗时时间为t1,n个节点的总耗时时间tsum为:
tsum=t1+t2+……+tn 式1;
平均每个节点的耗时时间tavg为:
tavg=tsum/n 式2;
定义节点node的拥堵值jam等于节点node的耗时t与平均每个节点的耗时tavg之间的差(相当于本发明实施例中的根据运行耗时值计算得到与各个节点一一对应的运行耗时偏差值),即:
jam=t-tavg 式3;
将对接方推送的全链路节点和耗时,结合式1至3,即可计算出全链路各节点的拥堵值jam(相当于本发明实施例的运行耗时偏差值),例如:10,20,-30,30,-12,45,50,20,-1,20,50,40……;
(3)计算最拥堵子链路
节点拥堵值之和最大的子链路为最拥堵的子链路。
对于拥堵值的序列的步骤如下:
1)遍历该拥堵值序列,在遍历的过程中,将遍历到的值依次累加起来,并用变量max_end_here记录累加值(相当于本发明实施例中的校验值),用变量start记录累加起始位置,当累加结果小于或等于0时(相当于本发明实施例的若所述校验结果为所述校验值小于或者等于所述预设的校验值阈值),从下一个元素开始,重新开始累加,并用一个变量start2记录新的累加起始位置。
2)累加过程中,使用变量max_so_far记录所获得过的最大值拥堵值(相当于本发明实施例中的将目标校验值存储至第一存储空间),使用变量stop记录获得最大值时的位置;
3)当max_end_here大于max_so_far时,做如下操作:
max_so_far=max_end_here;
stop=j,j为此时累加元素的位置;
start=start2。
4)经过一次遍历之后,变量max_so_far中存储的即为最拥堵子链路的和值,即为最大拥堵值;与最大拥堵值对应的start为最大拥堵子链路的起始节点位置,与最大拥堵值对应的stop为最大拥堵子链路的截止节点位置,与最大拥堵值对应的start到与最大拥堵值对应的stop之间到节点所构成的子链路即为最大拥堵子链路。
(4)返回拥堵链路数据接口
请求类型:post;
接口地址:由对接方提供;
数据格式:json,最大拥堵子链路的节点和相应拥堵值,最大拥堵子链路的拥堵值,示例:{“datas”:{“node1”:2,“node2”:-2,“node1”:10,“node3”:30,“node4”:10 ……,“nodeM”:-10},“max”:2000};
接收成功后需返回0000,表示对接方接收成功,示例:{“code”:0000}。
在本发明实施例中,通过第一获取步骤、前设步骤、累加步骤、检查步骤、校验步骤、第一执行步骤、第二执行步骤及确定步骤,将运行耗时偏差值累加得到校验值,并根据对校验值的校验结果确定被监测链路中的各个子链路,进一步根据校验值从各个子链路中的确定最拥堵子链路,无需通过直接解算确定最拥堵子链路,本发明实施例确定最拥堵子链的过程简便,所需要的算力资源少,确定最拥堵子链路的效率高。
本发明的一些实施例中,可选地,
根据运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据运行耗时值,计算得到所有节点的平均运行耗时值;
计算各个节点的运行耗时值与平均运行耗时值之间的差值为运行耗时偏差值。
示例性的,(2)各节点拥堵值计算,具体可以为以下步骤:
设节点node1的耗时时间为t1,n个节点的总耗时时间tsum为:
tsum=t1+t2+……+tn 式1;
平均每个节点的耗时时间tavg为:
tavg=tsum/n 式2;
定义节点node的拥堵值jam等于节点node的耗时t与平均每个节点的耗时tavg之间的差,即:
jam=t-tavg 式3;
将对接方推送的全链路节点和耗时,结合式1至式3,即可计算出全链路各节点的拥堵值,例如:10,20,-30,30,-12,45,50,20,-1,20,50,40……。
本发明的一些实施例中,可选地,
根据运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值计算得到P99值,所述P99值为大于或者等于99%的所述运行耗时值的数值;
计算各个节点的所述运行耗时值与所述P99值之间的差值为所述运行耗时偏差值。
示例性的,(2)各节点拥堵值计算的具体步骤可以为:设节点node1的耗时时间为t1,并以此类推具备n个节点,将耗时t1、t2、……、tn从小到大排列,99%的耗时数据都在z秒内,z就是P99的值。
本发明的一些实施例中,可选地,
根据运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据运行耗时值,得到所有节点的运行耗时值的中位值;
计算各个节点的运行耗时值与中位值之间的差值为运行耗时偏差值。
本发明的一些实施例中,可选地,
根据运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据运行耗时值计算得到P90值,P90值为大于或者等于90%的运行耗时值的数值;
计算各个节点的运行耗时值与P90值之间的差值为运行耗时偏差值。
示例性的,(2)各节点拥堵值计算的具体步骤可以为:设节点node1的耗时时间为t1,并以此类推具备n个节点,将耗时t1、t2、……、tn从小到大排列,90%的耗时数据都在x秒内,x就是P90的值。
本发明的一些实施例中,可选地,确定步骤18之后包括:
从第二存储空间中获取最拥堵子链路的信息,并采用返回拥堵链路数据接口将最拥堵子链路的信息发送给用户。
示例性的,(4)返回拥堵链路数据接口,具体可以为以下步骤:
请求类型:post;
接口地址:由对接方提供;
数据格式:json,最大拥堵子链路的节点和相应拥堵值,最大拥堵子链路的拥堵值,示例:{“datas”:{“node1”:2,“node2”:-2,“node1”:10,“node3”:30,“node4”:10 ……,“nodeM”:-10},“max”:2000};
接收成功后需返回0000,表示对接方接收成功,示例:{“code”:0000}。
本发明的一些实施例中,可选地,第一获取步骤11包括:
从接收链路数据接口获取与被监测链路中各个节点一一对应的运行耗时值。
示例性的,(1)接收链路数据接口,具体可以为以下步骤:
请求类型:post;
接口地址:/jamserver/push/datas;
数据格式:json,全链路节点名和相应耗时时间,消耗时间单位毫秒,示例:{“datas”:{“node1”:200,“node2”:200,“node1”:200,“node3”:200,“node4”:200 ……,“nodeN”:200}};
接收成功后返回码为0000,表示成功,示例:{“code”:0000}。
本发明实施例提供了一种最拥堵子链路的确定装置,参见图5所示,图5为本发明实施例最拥堵子链路的确定装置的原理框图,最拥堵子链路的确定装置50包括:
获取模块51,用于第一获取步骤:获取与应用程序的被监测链路中各个节点一一对应的运行耗时值,根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,所述运行耗时偏差值用于指示各个节点的所述运行耗时值相对所有节点的所述运行耗时值的偏差程度;
执行模块52,用于前设步骤:以所述被监测链路中位于起始位置的节点为子链路的起始节点;
所述执行模块52,还用于累加步骤:检测是否存在历史的校验值,得到检测结果;若所述检测结果为不存在,将所述起始节点的运行耗时偏差值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到所述校验值;若所述检测结果为存在,将历史的所述校验值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到新的所述校验值;
所述执行模块52,还用于检查步骤:检查预分配的第一存储空间是否已存储有目标校验值,得到检查结果;若所述检查结果为未存储有所述目标校验值,将所述校验值作为所述目标校验值存储至所述第一存储空间;若所述检查结果为存储有所述目标校验值,且所述校验值大于所述目标校验值,将所述校验值作为新的目标校验值存储至所述第一存储空间以更新所述目标校验值,确定所述下一节点为当前子链路的终止节点,将当前子链路的信息存储至预分配的第二存储空间;
校验模块53,用于校验步骤:校验所述校验值是否小于预设的校验值阈值,得到校验结果;
所述执行模块52,还用于第一执行步骤:若所述校验结果为所述校验值小于所述预设的校验值阈值,对所述校验值进行更新,使得更新之后的所述校验值与所述预设的校验阈值相等;以所述起始节点之后的第二个节点为新子链路的起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
所述执行模块52,还用于第二执行步骤:若所述校验结果为所述校验值大于或者等于所述预设的校验值阈值,以所述下一节点为新的所述起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
所述执行模块52,还用于确定步骤:从所述第一存储空间中获取所述目标校验值,根据所述目标校验值确定所述第二存储空间中的一子链路为最拥堵子链路。
本发明的一些实施例中,可选地,
所述获取模块51,还用于根据所述运行耗时值,计算得到所有节点的平均运行耗时值;
所述获取模块51,还用于计算各个节点的所述运行耗时值与所述平均运行耗时值之间的差值为所述运行耗时偏差值。
本发明的一些实施例中,可选地,
所述获取模块51,还用于根据所述运行耗时值计算得到P99值,所述P99值为大于或者等于99%的所述运行耗时值的数值;
所述获取模块51,还用于计算各个节点的所述运行耗时值与所述P99值之间的差值为所述运行耗时偏差值。
本发明的一些实施例中,可选地,
所述获取模块51,还用于根据所述运行耗时值,得到所有节点的所述运行耗时值的中位值;
所述获取模块51,还用于计算各个节点的所述运行耗时值与所述中位值之间的差值为所述运行耗时偏差值。
本发明的一些实施例中,可选地,
所述获取模块51,还用于根据所述运行耗时值计算得到P90值,所述P90值为大于或者等于90%的所述运行耗时值的数值;
所述获取模块51,还用于计算各个节点的所述运行耗时值与所述P90值之间的差值为所述运行耗时偏差值。
本发明的一些实施例中,可选地,
所述执行模块52,还用于从所述第二存储空间中获取所述最拥堵子链路的信息,并采用返回拥堵链路数据接口将所述最拥堵子链路的信息发送给用户。
本发明的一些实施例中,可选地,
所述获取模块51,还用于从接收链路数据接口获取与被监测链路中各个节点一一对应的运行耗时值。
本申请实施例提供的最拥堵子链路的确定装置能够实现图1至图4的方法实施例实现的各个过程,并达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例提供了一种电子设备60,参见图6所示,图6为本发明实施例电子设备60的原理框图,包括处理器61,存储器62及存储在存储器62上并可在处理器61上运行的程序或指令,程序或指令被处理器执行时实现本发明的任一项最拥堵子链路的确定方法中的步骤。
本发明实施例提供了一种可读存储介质,可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如上述任一项的最拥堵子链路的确定方法的实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述的可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (10)
1.一种最拥堵子链路的确定方法,其特征在于,包括:
第一获取步骤:获取与应用程序的被监测链路中各个节点一一对应的运行耗时值,根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,所述运行耗时偏差值用于指示各个节点的所述运行耗时值相对所有节点的所述运行耗时值的偏差程度;
前设步骤:以所述被监测链路中位于起始位置的节点为子链路的起始节点;
累加步骤:检测当前子链路是否存在历史的校验值,得到检测结果;若所述检测结果为不存在,将所述起始节点的运行耗时偏差值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到所述校验值;若所述检测结果为存在,将历史的所述校验值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到新的所述校验值;
检查步骤:检查预分配的第一存储空间是否已存储有目标校验值,得到检查结果;若所述检查结果为未存储有所述目标校验值,将所述校验值作为所述目标校验值存储至所述第一存储空间;若所述检查结果为存储有所述目标校验值,且所述校验值大于所述目标校验值,将所述校验值作为新的目标校验值存储至所述第一存储空间以更新所述目标校验值,确定所述下一节点为当前子链路的终止节点,将当前子链路的信息存储至预分配的第二存储空间;
校验步骤:校验所述校验值是否小于预设的校验值阈值,得到校验结果;
第一执行步骤:若所述校验结果为所述校验值小于所述预设的校验值阈值,对所述校验值进行更新,使得更新之后的所述校验值与所述预设的校验阈值相等;以所述起始节点之后的第二个节点为新子链路的起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
第二执行步骤:若所述校验结果为所述校验值大于或者等于所述预设的校验值阈值,以所述下一节点为新的所述起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
确定步骤:从所述第一存储空间中获取所述目标校验值,根据所述目标校验值确定所述第二存储空间中的一子链路为最拥堵子链路。
2.根据权利要求1所述的最拥堵子链路的确定方法,其特征在于:
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值,计算得到所有节点的平均运行耗时值;
计算各个节点的所述运行耗时值与所述平均运行耗时值之间的差值为所述运行耗时偏差值。
3.根据权利要求1所述的最拥堵子链路的确定方法,其特征在于:
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值计算得到P99值,所述P99值为大于或者等于99%的所述运行耗时值的数值;
计算各个节点的所述运行耗时值与所述P99值之间的差值为所述运行耗时偏差值。
4.根据权利要求1所述的最拥堵子链路的确定方法,其特征在于:
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值,得到所有节点的所述运行耗时值的中位值;
计算各个节点的所述运行耗时值与所述中位值之间的差值为所述运行耗时偏差值。
5.根据权利要求1所述的最拥堵子链路的确定方法,其特征在于:
根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,包括:
根据所述运行耗时值计算得到P90值,所述P90值为大于或者等于90%的所述运行耗时值的数值;
计算各个节点的所述运行耗时值与所述P90值之间的差值为所述运行耗时偏差值。
6.根据权利要求1所述的最拥堵子链路的确定方法,其特征在于:
所述确定步骤之后包括:
从所述第二存储空间中获取所述最拥堵子链路的信息,并采用返回拥堵链路数据接口将所述最拥堵子链路的信息发送给用户。
7.根据权利要求1所述的最拥堵子链路的确定方法,其特征在于:
所述第一获取步骤包括:
从接收链路数据接口获取与被监测链路中各个节点一一对应的运行耗时值。
8.一种最拥堵子链路的确定装置,其特征在于,包括:
获取模块,用于第一获取步骤:获取与应用程序的被监测链路中各个节点一一对应的运行耗时值,根据所述运行耗时值计算得到与各个节点一一对应的运行耗时偏差值,所述运行耗时偏差值用于指示各个节点的所述运行耗时值相对所有节点的所述运行耗时值的偏差程度;
执行模块,用于前设步骤:以所述被监测链路中位于起始位置的节点为子链路的起始节点;
所述执行模块,还用于累加步骤:检测当前子链路是否存在历史的校验值,得到检测结果;若所述检测结果为不存在,将所述起始节点的运行耗时偏差值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到所述校验值;若所述检测结果为存在,将历史的所述校验值与所述起始节点之后的下一节点的运行耗时偏差值相加,得到新的所述校验值;
所述执行模块,还用于检查步骤:检查预分配的第一存储空间是否已存储有目标校验值,得到检查结果;若所述检查结果为未存储有所述目标校验值,将所述校验值作为所述目标校验值存储至所述第一存储空间;若所述检查结果为存储有所述目标校验值,且所述校验值大于所述目标校验值,将所述校验值作为新的目标校验值存储至所述第一存储空间以更新所述目标校验值,确定所述下一节点为当前子链路的终止节点,将当前子链路的信息存储至预分配的第二存储空间;
校验模块,用于校验步骤:校验所述校验值是否小于预设的校验值阈值,得到校验结果;
所述执行模块,还用于第一执行步骤:若所述校验结果为所述校验值小于所述预设的校验值阈值,对所述校验值进行更新,使得更新之后的所述校验值与所述预设的校验阈值相等;以所述起始节点之后的第二个节点为新子链路的起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
所述执行模块,还用于第二执行步骤:若所述校验结果为所述校验值大于或者等于所述预设的校验值阈值,以所述下一节点为新的所述起始节点,返回所述累加步骤,直至所述被监测链路中的所有节点完成相加;
所述执行模块,还用于确定步骤:从所述第一存储空间中获取所述目标校验值,根据所述目标校验值确定所述第二存储空间中的一子链路为最拥堵子链路。
9.一种电子设备,其特征在于:包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1至7中任一项所述的最拥堵子链路的确定方法中的步骤。
10.一种可读存储介质,其特征在于:所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1至7中任一项所述的最拥堵子链路的确定方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147417.1A CN115237727B (zh) | 2022-09-21 | 2022-09-21 | 最拥堵子链路的确定方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147417.1A CN115237727B (zh) | 2022-09-21 | 2022-09-21 | 最拥堵子链路的确定方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115237727A CN115237727A (zh) | 2022-10-25 |
CN115237727B true CN115237727B (zh) | 2022-12-02 |
Family
ID=83681834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211147417.1A Active CN115237727B (zh) | 2022-09-21 | 2022-09-21 | 最拥堵子链路的确定方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115237727B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107196821A (zh) * | 2017-05-24 | 2017-09-22 | 深圳市乃斯网络科技有限公司 | 网络链路中时延的校验方法及系统 |
CN110445667A (zh) * | 2019-05-29 | 2019-11-12 | 北京大米科技有限公司 | 一种链路延迟检测方法、装置、存储介质以及终端 |
CN114979014A (zh) * | 2022-06-30 | 2022-08-30 | 国网北京市电力公司 | 数据转发路径规划方法、装置以及电子设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL144141A0 (en) * | 2001-07-04 | 2002-05-23 | Method and system for improving a route along which data is sent using an ip protocol in a data communications network | |
US7362703B1 (en) * | 2003-07-10 | 2008-04-22 | Sprint Communications Company L.P. | Method for deflection routing of data packets to alleviate link overload in IP networks |
CN104753812B (zh) * | 2013-12-30 | 2019-12-10 | 台湾积体电路制造股份有限公司 | 通信系统中的应用质量管理 |
CN104202190B (zh) * | 2014-09-02 | 2017-07-25 | 百度在线网络技术(北京)有限公司 | 一种网络链路监控方法及设备 |
CN104468636A (zh) * | 2015-01-09 | 2015-03-25 | 李忠 | DDoS威胁过滤与链路重配的SDN架构及工作方法 |
CN106803812B (zh) * | 2015-11-26 | 2020-12-01 | 华为技术有限公司 | 一种用于实现负载分担的方法和装置 |
CN106535242B (zh) * | 2016-09-30 | 2019-10-11 | 东南大学 | 一种无线云计算系统性能预测方法 |
CN111526063B (zh) * | 2020-03-04 | 2022-11-11 | 平安科技(深圳)有限公司 | 基于整体业务链路断点监控方法、装置、终端及存储介质 |
CN113918638A (zh) * | 2021-10-22 | 2022-01-11 | 平安科技(深圳)有限公司 | 数据处理链路确定方法、系统、设备及存储介质 |
-
2022
- 2022-09-21 CN CN202211147417.1A patent/CN115237727B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107196821A (zh) * | 2017-05-24 | 2017-09-22 | 深圳市乃斯网络科技有限公司 | 网络链路中时延的校验方法及系统 |
CN110445667A (zh) * | 2019-05-29 | 2019-11-12 | 北京大米科技有限公司 | 一种链路延迟检测方法、装置、存储介质以及终端 |
CN114979014A (zh) * | 2022-06-30 | 2022-08-30 | 国网北京市电力公司 | 数据转发路径规划方法、装置以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115237727A (zh) | 2022-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106325978B (zh) | 分布式事务的处理方法及装置 | |
EP2597828B1 (en) | Dynamic adaptations for network delays during complex event processing | |
CN107562385B (zh) | 分布式存储客户端读取数据的方法、装置和设备 | |
CN109840837B (zh) | 财务数据的处理方法、装置、计算机可读介质及电子设备 | |
US20210334791A1 (en) | Method and device for blockchain-based data traffic calculation | |
CN111752803A (zh) | 埋点数据收集上报的方法、装置及介质 | |
CN103841169A (zh) | 远程复制方法和设备 | |
CN115237727B (zh) | 最拥堵子链路的确定方法、装置、电子设备及存储介质 | |
CN113849388A (zh) | 一种测试方法和装置、电子设备和存储介质 | |
CN111260227B (zh) | 业务数据源处理方法、装置、计算机设备和存储介质 | |
CN108989977B (zh) | 司机客户端在线时长的统计方法、服务端及司机客户端 | |
CN112000623A (zh) | 一种元数据的存取方法、装置和计算机可读存储介质 | |
CN108304301B (zh) | 记录用户行为轨迹的方法及装置 | |
CN114466321B (zh) | 消息发送方法及装置、电子设备及存储介质 | |
CN116305857A (zh) | 自动驾驶仿真测试方法、装置、设备以及存储介质 | |
CN111711514B (zh) | 网络请求超时重传方法及装置 | |
CN109901117B (zh) | 一种雷达重启方法及装置 | |
CN109347940B (zh) | 处理跨域业务请求及对跨域业务的请求方法和装置 | |
CN115914010A (zh) | 网络监测方法、装置及计算机存储介质 | |
KR20180132292A (ko) | 실시간 병목 자동 분석 방법 및 이러한 방법을 수행하는 장치 | |
US20180260265A1 (en) | Method and apparatus for data loss assessment | |
CN114564321B (zh) | 一种快照创建方法、系统及计算机可读存储介质 | |
CN114584572B (zh) | 一种分布式对象存储中数据同步方法、装置、设备及介质 | |
CN113011507B (zh) | 建立同步时间预测模型的方法、数据同步方法及对应装置 | |
CN111711537B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |