CN113297037A - 分布式***跟踪监控方法、***及介质 - Google Patents
分布式***跟踪监控方法、***及介质 Download PDFInfo
- Publication number
- CN113297037A CN113297037A CN202110849956.9A CN202110849956A CN113297037A CN 113297037 A CN113297037 A CN 113297037A CN 202110849956 A CN202110849956 A CN 202110849956A CN 113297037 A CN113297037 A CN 113297037A
- Authority
- CN
- China
- Prior art keywords
- information
- time
- data
- timestamp
- time delay
- 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
Links
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/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
- G06F11/3075—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2322—Optimistic concurrency control using timestamps
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了分布式***跟踪监控方法、***及介质,方法包括:分布式服务器接收委托数据对其进行处理,同时根据信息生成规则生成与委托数据对应的时间戳信息发送至管理服务器,管理服务器接收时间戳信息并从中获取每一委托数据对应的时间信息,根据时延计算规则从每一委托数据的时间信息中获取每一委托数据的指标时延信息,根据统计规则对每一委托数据的指标时延监控时间进行整合统计,得到时延统计信息。本发明属于分布式***监控的技术领域,对分布式服务器中委托数据的处理过程的时延信息进行跟踪监控,可对高吞吐量的数据做时延的实时测量和统计,提高了时延测量及统计分析的可靠性及精准性,提高了对分布式***的时延信息进行监控的效率。
Description
技术领域
本发明涉及分布式***监控的技术领域,尤其涉及一种分布式***跟踪监控方法、***及介质。
背景技术
随着互联网技术的快速发展,人们数据处理过程中的耗时格外关注,例如用户使用终端设备发送请求信息至服务器端,服务器端根据请求信息反馈相应输出结果,则发送请求信息至获取输出结果之间存在时延(时间差),而如何对数据处理中各处理阶段的时延进行分析以优化数据处理过程,是提高数据处理效率的关键,尤其是对分布式***中各服务器的各处理阶段的时延进行获取及分析。传统技术方法通常是采用网络抓包、日志分析等方式测量时延,而采用网络抓包的测量方法仅能够适用于测量网络传输的时延,无法实现对应用程序中内部数据处理时延进行测量;而采用日志分析的方法则需占用服务器的本地***资源,在服务器处理能力有限的情况下,无法对高吞吐量的数据做到每笔消息的时延的实时测量和统计,导致时延测量及后续统计分析的可靠性及精准性不高,影响了对分布式***的时延信息进行监控的效率。因此,现有技术方法中对分布式***的时延信息进行监控存在效率较低的问题。
发明内容
本发明实施例提供了一种分布式***跟踪监控方法、***及介质,旨在解决现有技术方法中对分布式***的时延信息进行监控所存在的效率较低的问题。
第一方面,本发明实施例提供了一种分布式***跟踪监控方法,所述方法应用于分布式***跟踪监控***中,所述***包括管理服务器及多个分布式服务器,所述管理服务器与每一所述分布式服务器建立网络连接以实现数据信息的传输,所述方法包括:
所述分布式服务器若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器;
所述管理服务器若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息;
所述管理服务器根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间;
所述管理服务器根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。
第二方面,本发明实施例提供了一种分布式***跟踪监控***,所述***包括管理服务器及多个分布式服务器,所述管理服务器与每一所述分布式服务器建立网络连接以实现数据信息的传输;
所述分布式服务器包括:时间戳信息发送单元,用于若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器;
所述管理服务器包括:
时间信息获取单元,用于若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息;
指标时延监控时间获取单元,用于根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间;
时延统计信息获取单元,用于根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。
第三方面,本发明实施例又提供了一种计算机设备,其包括管理服务器及多个分布式服务器,所述管理服务器包括第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的第一计算机程序,所述分布式服务器包括第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序且所述第二处理器执行所述第二计算机程序以共同实现上述第一方面所述的分布式***跟踪监控方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有第一计算机程序和/或第二计算机程序,当所述第一计算机程序被第一处理器执行且所述第二计算机程序被第二处理器执行时共同实现上述第一方面所述的分布式***跟踪监控方法。
本发明实施例提供了一种分布式***跟踪监控方法、***及介质。分布式服务器接收委托数据对其进行处理,同时根据信息生成规则生成与委托数据对应的时间戳信息发送至管理服务器,管理服务器接收时间戳信息并从中获取每一委托数据对应的时间信息,根据时延计算规则从每一委托数据的时间信息中获取每一委托数据的指标时延信息,根据统计规则对每一委托数据的指标时延监控时间进行整合统计,得到时延统计信息。通过上述方法,对分布式服务器中委托数据的处理过程的时延信息进行跟踪监控,并可对高吞吐量的数据做到每笔消息的时延的实时测量和统计,大幅提高了时延测量及统计分析的可靠性及精准性,可大幅提高对分布式***的时延信息进行监控的效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的分布式***跟踪监控方法的流程示意图;
图2为本发明实施例提供的分布式***跟踪监控方法的应用场景示意图;
图3为本发明实施例提供的分布式***跟踪监控方法的子流程示意图;
图4为本发明实施例提供的分布式***跟踪监控方法的另一子流程示意图;
图5为本发明实施例提供的分布式***跟踪监控方法的另一流程示意图;
图6为本发明实施例提供的分布式***跟踪监控方法的另一子流程示意图;
图7为本发明实施例提供的分布式***跟踪监控方法的另一子流程示意图;
图8为本发明实施例提供的分布式***跟踪监控方法的另一流程示意图;
图9为本发明实施例提供的分布式***跟踪监控***的示意性框图;
图10为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和 “包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1及图2,图1是本发明实施例提供的分布式***跟踪监控方法的流程示意图;图2为本发明实施例提供的分布式***跟踪监控方法的应用场景示意图;该分布式***跟踪监控方法应用于分布式***跟踪监控***中,***包括管理服务器10及多个分布式服务器20,该分布式***跟踪监控方法通过安装于管理服务器10及多个分布式服务器20中的应用软件进行执行,管理服务器10与每一分布式服务器20建立网络连接以实现数据信息的传输,分布式服务器20即为对委托数据进行处理的服务器端,每一分布式服务器20中均至少配置有一个应用程序,分布式服务器20通过其配置的应用程序对所接收到的委托数据进行处理,应用程序中均配置有对应的时间戳采集点,管理服务器10即是对每一分布式服务器20的时延信息进行跟踪监控的服务器端,如企业或政府部门所构建的服务器。如图1所示,该方法包括步骤S110~S140。
S110、所述分布式服务器若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器。
所述分布式服务器若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器。
分布式服务器可接收外部输入的委托数据(如客户端输入至分布式服务器的委托数据),分布式服务器通过其中配置的应用程序对委托数据进行处理,则委托数据在各应用程序及各分布式服务器之间流转,并有可能产生对外输出。分布式服务器通过信息生成规则生成与每一委托数据对应的时间戳信息,并将所生成的时间戳信息发送至管理服务器。应用程序中可配置时间戳采集点,委托数据每次经过时间戳采集点均采集一次时间戳并生成相应时间戳信息,其中,时间戳信息包括采集点标识、数据标识及时间戳,采集点标识即为与每一时间戳采集点唯一对应的标识信息,数据标识即为与每一委托数据唯一对应的标识信息。具体的,可在每一应用程序中对应配置两个或两个以上的时间戳采集点,如配置输入时间戳采集点及输出时间戳采集点,输入时间戳采集点位于应用程序中输入委托数据的入口,输出时间戳采集点位于应用程序中输出委托数据的出口。
在一实施例中,如图3所示,步骤S110包括子步骤S111、S112、S113和S114。
S111、所述委托数据到达处理中的第一个时间戳采集点,在所述委托数据的头部添加采集标识信息。
需采样的委托数据需在第一个时间戳采集点进行采样,采样也即是分布式服务器对接收到的委托数据进行筛选的过程,以筛选出符合采样条件的委托数据作为需采样的委托数据,并对采样的委托数据添加采样标识信息。后续时间戳采集点通过识别采样标识信息即可判断是否需要对委托数据进行时间戳采集,并且后续的时间戳采集点不改变该采样标识信息,以保证数据采样在各个时间戳采集点保持一致。
S112、根据添加采集标识信息的所述委托数据在处理中经过的时间戳采集点的时间信息生成与每一所述时间戳采集点对应的时间戳。
每一分布式服务器中均包含***时间,当委托数据经过某一时间戳采集点时即对当前***时间进行记录得到时间信息,并基于时间信息生成该委托数据与当前时间戳采集点对应的时间戳。
S113、根据所述信息生成规则将所述时间戳、所述时间戳采集点对应的采集点标识及所述委托数据对应的数据标识进行组合,以生成与所述委托数据对应的时间戳信息。
根据信息生成规则中的信息组合方式对时间戳、采集点标识及数据标识进行组合,以生成与委托数据对应的时间戳信息。其中,数据标识可以是每一委托数据自身固有的标识信息,还可以是基于委托数据的信息所生成的标识信息,如可基于委托数据的数据信息及输入源地址进行散列处理以生成唯一对应的数据标识,散列处理可以是sha256算法处理。
S114、将所述委托数据与每一时间戳采集点对应的时间戳信息发送至所述管理服务器。
每生成与委托数据对应的一份时间戳信息,即可及时将时间戳信息发送至管理服务器。
S120、所述管理服务器若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息。
所述管理服务器若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息。管理服务器可接收任一分布式服务器所输出的时间戳信息,管理服务器可首先对时间戳信息进行整理,以从中获取到每一委托数据对应的时间信息。
此外,管理服务器获取到时间戳信息后,可采用二进制形式对所接收到的时间戳信息进行存储,还可通过时序数据库influxdb对所接收到的时间戳信息进行存储,LatencyAnalyzer获取任意一种方式所存储的时间戳信息并直接将数据结构追加到指定的文件中,以实现对时间戳信息进行数据重演,具体的,LatencyAnalyzer 依次读取所存储的时间戳信息中保存的所有时间戳采集点的时间戳数据进行时延计算,相当于应用重新发送了一份一模一样的采集点数据,即重演,根据需要重演可以得到最终时延统计数据或逐笔时延数据。与此同时,时序数据库influxdb可对应保存两种类型的数据,即原始的时间戳信息及周期计算得到的时延统计信息,对于原始的时间戳信息,多个时间戳采集点的时间戳数据会根据数据标识(以数据标识作为trace_id)关联为一行,列为各个时间戳采集点的名称和时间戳;LatencyAnalyzer可基于所存储的时间戳信息每秒计算一次时延,得到周期计算得到的时延统计信息并将时延计算的中间结果保存到influxdb,Influxdb中的表数据对应用完全透明,仅供 LatencyAnalyzer内部使用,后续对实时时间戳信息的获取以及历史时延统计信息的分析都是基于influxdb中保存的数据进行的。
在一实施例中,如图4所示,步骤S120包括子步骤S121和S122。
S121、根据所述时间戳信息中包含的数据标识对所述时间戳信息进行分类,以得到同一数据标识对应的时间戳信息。
具体的,数据标识即为与委托数据唯一对应的标识信息,可基于数据标识对时间戳信息进行分类,以获取包含同一数据标识的时间戳信息,同一数据标识的时间戳信息即为同一委托数据所对应的时间戳信息。
在获取委托数据对应的时间信息之前,还可对每一委托数据的时间戳信息进行完整性校验。具体的,若某一委托数据在正常处理过程中必然会经过八个固定的时间戳采集点,即可验证委托数据的时间戳信息中是否包含该八个固定的时间戳采集点所对应的采集点标识,若委托数据的时间戳信息中未同时包含对应的八个采样点标识,即可判定该委托数据的处理过程异常,也即该委托数据的时间戳信息的校验结果为不完整,异常的委托数据的时间戳信息可单独存储于异常数据表中,若委托数据的时间戳信息中同时包含对应的八个采样点标识,则该委托数据的时间戳信息的校验结果为完整。且异常的委托数据的时间戳信息不会进行后续计算处理,也即是不会进行时延监控。
S122、从同一所述数据标识包含的时间戳信息中分别获取每一所述时间戳信息的时间戳,确定为每一所述数据标识对应的委托数据的时间信息。
可从同一委托数据的时间戳信息中获取对应的时间戳作为与每一委托数据对应的时间信息。
S130、所述管理服务器根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间。
所述管理服务器根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间。可根据时延计算规则计算得到每一委托数据对应的指标时延监控时间,时延计算规则中包括至少一个时延指标,则每一委托数据的指标时延监控时间也包含与至少一个时延指标对应的时延计算值。
在一实施例中,如图5所示,步骤S130之前包括步骤S1301、S1302和S1303。
S1301、获取每一所述分布式服务器的***时间;S1302、获取每一所述分布式服务器的***时间与所述管理服务器的当前时间之间的时间差;S1303、根据每一所述分布式服务器的时间差对每一所述委托数据对应的时间信息进行时钟校准,得到每一所述委托数据对应的校准后的时间信息。
在计算委托数据的指标时延监控时间之前,还可对委托数据的时间信息进行校准。具体的,可同时获取每一分布式服务器的***时间,并根据管理服务器的当前时间计算每一分布式服务器的***时间与当前时间的时间差,根据所计算得到的时间差对每一委托数据的时间信息进行时钟校准,得到对每一时间信息进行校准后的时间信息,具体的,可对时间信息中与时间差对应的分布式服务器的时间戳信息进行校准。
例如,某一分布式服务器的***时间为T1。管理服务器的当前时间为T0,与该分布式服务器的时间戳采集点对应的一个时间戳为t,时间差为T1- T0,则对该时间戳t进行校准后所得到的时间戳为t-( T1- T0)。
在另一实施例中,如图6所示,步骤S130包括子步骤S131、S132和S133。
S131、根据所述时延计算规则中每一时延指标的开始采集点及结束采集点从每一所述委托数据的时间信息中获取对应的开始时间戳及结束时间戳。
时延计算规则中包含至少一个时延指标,每一时延指标包含开始采集点及结束采集点,开始采集点和结束采集点可以是同一分布式服务器中同一应用程序所配置的时间戳采集点,也可以是同一分布式服务器中两个不同应用程序分别配置的两个时间戳采集点,还可以是不同分布式服务器中分别配置的两个时间戳采集点。则可根据时延指标包含的两个时间戳采集点从每一委托数据的时间信息对应获取到两个时间戳。
例如,应用程序A为交易执行程序,其包含输入时间戳采集点A1及输出时间戳采集点A2,同一分布式服务器中配置的应用程序B为网关程序,其包含输入时间戳采集点B1、输出时间戳采集点B2、反馈时间戳采集点B3。“交易执行处理时延” (委托数据在交易执行程序内部的处理时延)这一时延指标所对应的开始采集点为A1,结束采集点为A2,“委托上行时延”(从委托数据进入网关程序到向交易所报盘的时延)这一时延指标所对应的开始采集点为B1,结束采集点为B2,“委托回路时延”(从委托数据进入网关程序到从网关程序收到交易所反馈的委托确认的时延)这一时延指标所对应的开始采集点为B2,结束采集点为B3,“程序处理时延(委托数据在分布式服务器内部进行处理的整体时延)”这一时延指标所对应的开始采集点为A1,结束采集点为B2。
S132、对每一所述委托数据与每一所述时延指标对应的开始时间戳及结束时间戳进行减法运算,得到每一所述委托数据与每一所述时延指标对应的时延计算值。
一个委托数据与每一时延指标均对应开始时间戳及结束时间戳,则可将结束时间戳减去开始时间戳,得到该委托数据在每一时延指标的时延计算值,通过上述方法即可获取到每一委托数据与每一时延指标分别对应的时延计算值。
S133、获取每一所述委托数据的时延计算值确定为对应的指标时延监控时间。
获取每一委托数据的时延计算值,即可得到每一委托数据的指标时延监控时间。
S140、所述管理服务器根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。
所述管理服务器根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。可根据统计规则对每一委托数据的指标时延监控时间进行整合计算,统计规则即为对所得到的指标时延监控时间进行整合计算的规则信息,其中,所述统计规则包括统计时间段、指标项信息及统计项信息。
在一实施例中,如图7所示,步骤S140包括子步骤S141、S142和S143。
S141、根据所述统计时间段从每一所述委托数据的指标时延监控时间中获取处于所述统计时间段内的时延计算值。
可根据统计时间段获取位于该统计时间段内的时延计算值,以实现周期性获取时延计算值。统计时间段可由预先配置的统计周期计算得到,则统计时间段为本次统计时间点与上一统计时间点之间的所间隔的一个时间段,如统计周期为1秒,上一统计时间点为15:03:05,则本次统计时间点为15:03:06,统计时间段即为15:03:05-15:03:06,获取在该统计时间段内所接收到的所有时延计算值,也即可得到处于该统计时间段内的时延计算值。
S142、根据所述指标项信息包含的指标项从处于所述统计时间段内的时延计算值中获取每一指标项对应的目标时延计算值。
统计规则中还包括指标项信息,指标项信息即为对处于统计时间段内的时延计算值进行统计的具体指标项,指标项信息中包含至少一个指标项,则可根据指标项信息中包含的指标项从处于统计时间段内的时延计算值中获取每一指标项对应的目标时延计算值。
S143、根据所述统计项信息包含的统计项对每一所述指标项的目标时延计算值分别进行统计,得到每一所述指标项与每一所述统计项对应的统计值作为每一所述指标项的时延统计信息。
统计规则中还包括统计项信息,统计项即为对每一指标项的目标时延计算值进行统计的项目信息,统计项信息中包含至少一个统计项,具体的,统计项可以是平均值、最小值、最大值、50%位点值、90%位点值、95%位点值、99%位点值等。则每一统计项可对一个指标项的目标时延计算值进行一次统计得到一个统计值,多个统计项可对一个指标项的目标时延计算值分别进行统计得到对应的多个统计值,与每一指标项所对应的统计值即可组合成为与每一指标项对应的时延统计信息。
例如,统计项为90%位点值,即可对该统计项包含的目标时延计算值按从小到大进行排序,并取排序位置在总数量90%处的一个目标时延计算值作为该统计项的统计值。
获取到时延统计信息后,还可基于每一指标项的时延统计信息在管理服务器中生成与每一指标项对应的实时时延曲线,以方便对获取到的指标项的时延统计信息进行实时监控,例如,可基于每一指标项的时延统计信息生成对应的多条实时时延曲线,每一条实时时延曲线对应一个统计项(包括平均值、最小值、最大值、50%位点值、90%位点值、95%位点值、99%位点值),实时时延曲线每3秒刷新。同时可对时延统计信息及历史数据进行可视化分析,如历史时延曲线可展示一段时间内指标项的某一统计项的时延变化趋势,是实时时延曲线的历史表现;时延分布图可展示一段时间内指标项的多个统计项的时延分布情况;散点/热力图可展示一段时间内指标项的多个统计项的时延散落情况;内部时延分布图可对一个完整的数据处理回路每一处理阶段的时间占比进行综合分析,一条完整的数据处理回路由多个处理阶段组成,因此可清晰看出哪个处理节点的时延占比较大,内部时延分布图的类型包括柱状图和占比扇形图;可查询单个委托数据的详细时间戳信息,包括时间戳采集点名称和对应的时间戳。
在一实施例中,如图8所示,步骤S140之后还包括步骤S150和S160。
S150、所述管理服务器根据预存的输出格式对所述时延统计信息进行格式处理得到对应的时延统计输出信息。S160、所述管理服务器根据预存的输出路径对所述时延统计输出信息进行输出。
可根据预存的输出格式对时延统计信息进行格式处理,得到与输出格式对应的时延统计输出信息,并根据预存的输出路径对时延统计输出信息进行输出。输出格式可以是一种或多种,输出路径也可以是一条或多条。如在具体实施方式中,时延统计信息可以三种形式进行输出:1. 滚动输出到管理服务器的命令行控制台,此时输出格式即为命令行格式,输出路径即为控制台;2. 输出到管理服务器中预存的文件,追加记录每个统计周期的各项时延指标统计值,也可以记录每笔数据的各项时延指标统计数值,此时输出格式即为xml、txt等文本格式,输出路径即为文件的存储地址;3. 管理服务器可内嵌http服务组件,可接收来自用户终端内配置的浏览器或程序的http访问请求,并把当前的时延统计结果以JSON字符串的形式反馈至用户终端的使用者,此时输出格式即为JSON字符串,输出地址即为与http访问请求对应的互联网地址(该用户终端的终端地址)。
在本发明实施例所提供的分布式***跟踪监控方法中,分布式服务器接收委托数据对其进行处理,同时根据信息生成规则生成与委托数据对应的时间戳信息发送至管理服务器,管理服务器接收时间戳信息并从中获取每一委托数据对应的时间信息,根据时延计算规则从每一委托数据的时间信息中获取每一委托数据的指标时延信息,根据统计规则对每一委托数据的指标时延监控时间进行整合统计,得到时延统计信息。通过上述方法,对分布式服务器中委托数据的处理过程的时延信息进行跟踪监控,并可对高吞吐量的数据做到每笔消息的时延的实时测量和统计,大幅提高了时延测量及统计分析的可靠性及精准性,可大幅提高对分布式***的时延信息进行监控的效率。
本发明实施例还提供一种分布式***跟踪监控***100,该分布式***跟踪监控***100包括管理服务器10及多个分布式服务器20,该分布式***跟踪监控***100用于执行前述的分布式***跟踪监控方法的任一实施例,具体地,请参阅图9,图9为本发明实施例提供的分布式***跟踪监控***的示意性框图。
如图9所示,分布式服务器20包括时间戳信息发送单元210。管理服务器10包括:时间信息获取单元110、指标时延监控时间获取单元120及时延统计信息获取单元130。
时间戳信息发送单元210,用于若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器。
在一实施例中,所述时间戳信息发送单元210包括子单元:采集标识信息添加单元,用于所述委托数据到达处理中的第一个时间戳采集点,在所述委托数据的头部添加采集标识信息;时间戳生成单元,用于根据添加采集标识信息的所述委托数据在处理中经过的时间戳采集点的时间信息生成与每一所述时间戳采集点对应的时间戳;时间戳信息生成单元,用于根据所述信息生成规则将所述时间戳、所述时间戳采集点对应的采集点标识及所述委托数据对应的数据标识进行组合,以生成与所述委托数据对应的时间戳信息;信息发送单元,用于将所述委托数据与每一时间戳采集点对应的时间戳信息发送至所述管理服务器。
时间信息获取单元110,用于若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息。
在一实施例中,所述时间信息获取单元110包括子单元:时间戳信息分类单元,用于根据所述时间戳信息中包含的数据标识对所述时间戳信息进行分类,以得到同一数据标识对应的时间戳信息;时间信息确定单元,用于从同一所述数据标识包含的时间戳信息中分别获取每一所述时间戳信息的时间戳,确定为每一所述数据标识对应的委托数据的时间信息。
在一实施例中,所述管理服务器10还包括子单元:***时间获取单元,用于获取每一所述分布式服务器的***时间;时间差获取单元,用于获取每一所述分布式服务器的***时间与所述管理服务器的当前时间之间的时间差;时间信息校准单元,用于根据每一所述分布式服务器的时间差对每一所述委托数据对应的时间信息进行时钟校准,得到每一所述委托数据对应的校准后的时间信息。
指标时延监控时间获取单元120,用于根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间。
在一实施例中,所述指标时延监控时间获取单元120包括子单元:时间戳获取单元,用于根据所述时延计算规则中每一时延指标的开始采集点及结束采集点从每一所述委托数据的时间信息中获取对应的开始时间戳及结束时间戳;时延计算值获取单元,用于对每一所述委托数据与每一所述时延指标对应的开始时间戳及结束时间戳进行减法运算,得到每一所述委托数据与每一所述时延指标对应的时延计算值;指标时延监控时间确定单元,用于获取每一所述委托数据的时延计算值确定为对应的指标时延监控时间。
时延统计信息获取单元130,用于根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。
在一实施例中,所述时延统计信息获取单元130包括子单元:时延计算值获取单元,用于根据所述统计时间段从每一所述委托数据的指标时延监控时间中获取处于所述统计时间段内的时延计算值; 目标时延计算值获取单元,用于根据所述指标项信息包含的指标项从处于所述统计时间段内的时延计算值中获取每一指标项对应的目标时延计算值;统计值获取单元,用于根据所述统计项信息包含的统计项对每一所述指标项的目标时延计算值分别进行统计,得到每一所述指标项与每一所述统计项对应的统计值作为每一所述指标项的时延统计信息。
在本发明实施例所提供的分布式***跟踪监控***应用上述分布式***跟踪监控方法,分布式服务器接收委托数据对其进行处理,同时根据信息生成规则生成与委托数据对应的时间戳信息发送至管理服务器,管理服务器接收时间戳信息并从中获取每一委托数据对应的时间信息,根据时延计算规则从每一委托数据的时间信息中获取每一委托数据的指标时延信息,根据统计规则对每一委托数据的指标时延监控时间进行整合统计,得到时延统计信息。通过上述方法,对分布式服务器中委托数据的处理过程的时延信息进行跟踪监控,并可对高吞吐量的数据做到每笔消息的时延的实时测量和统计,大幅提高了时延测量及统计分析的可靠性及精准性,可大幅提高对分布式***的时延信息进行监控的效率。
上述分布式***跟踪监控***可以实现为计算机程序的形式,该计算机程序可以在如图10所示的计算机设备上运行。
请参阅图10,图10是本发明实施例提供的计算机设备的示意性框图。该计算机设备可以是用于执行分布式***跟踪监控方法的管理服务器,也可以是用于执行分布式***跟踪监控方法的分布式服务器20。
参阅图10,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括存储介质503和内存储器504。
该存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行分布式***跟踪监控方法,其中,存储介质503可以为易失性的存储介质或非易失性的存储介质。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行分布式***跟踪监控方法。
该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图10中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现上述的分布式***跟踪监控方法中对应的功能。
本领域技术人员可以理解,图10中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图10所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器502可以是中央处理单元 (CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路 (Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为易失性或非易失性的计算机可读存储介质。该计算机可读存储介质存储有第一计算机程序或第二计算机程序,当所述第一计算机程序被第一处理器执行且所述第二计算机程序被第二处理器执行时共同实现上述的分布式***跟踪监控方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备 ( 可以是个人计算机,服务器,或者网络设备等 ) 执行本发明各个实施例所述方法的全部或部分步骤。而前述的计算机可读存储介质包括:U 盘、移动硬盘、只读存储器 (ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种分布式***跟踪监控方法,其特征在于,所述方法应用于分布式***跟踪监控***中,所述***包括管理服务器及多个分布式服务器,所述管理服务器与每一所述分布式服务器建立网络连接以实现数据信息的传输,所述方法包括:
所述分布式服务器若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器;
所述管理服务器若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息;
所述管理服务器根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间;
所述管理服务器根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。
2.根据权利要求1所述的分布式***跟踪监控方法,其特征在于,所述对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器,包括:
所述委托数据到达处理中的第一个时间戳采集点,在所述委托数据的头部添加采集标识信息;
根据添加采集标识信息的所述委托数据在处理中经过的时间戳采集点的时间信息生成与每一所述时间戳采集点对应的时间戳;
根据所述信息生成规则将所述时间戳、所述时间戳采集点对应的采集点标识及所述委托数据对应的数据标识进行组合,以生成与所述委托数据对应的时间戳信息;
将所述委托数据与每一时间戳采集点对应的时间戳信息发送至所述管理服务器。
3.根据权利要求2所述的分布式***跟踪监控方法,其特征在于,所述从所述时间戳信息中获取每一所述委托数据对应的时间信息,包括:
根据所述时间戳信息中包含的数据标识对所述时间戳信息进行分类,以得到同一数据标识对应的时间戳信息;
从同一所述数据标识包含的时间戳信息中分别获取每一所述时间戳信息的时间戳,确定为每一所述数据标识对应的委托数据的时间信息。
4.根据权利要求1所述的分布式***跟踪监控方法,其特征在于,所述管理服务器根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间之前,还包括:
获取每一所述分布式服务器的***时间;
获取每一所述分布式服务器的***时间与所述管理服务器的当前时间之间的时间差;
根据每一所述分布式服务器的时间差对每一所述委托数据对应的时间信息进行时钟校准,得到每一所述委托数据对应的校准后的时间信息。
5.根据权利要求1所述的分布式***跟踪监控方法,其特征在于,所述管理服务器根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间,包括:
根据所述时延计算规则中每一时延指标的开始采集点及结束采集点从每一所述委托数据的时间信息中获取对应的开始时间戳及结束时间戳;
对每一所述委托数据与每一所述时延指标对应的开始时间戳及结束时间戳进行减法运算,得到每一所述委托数据与每一所述时延指标对应的时延计算值;
获取每一所述委托数据的时延计算值确定为对应的指标时延监控时间。
6.根据权利要求1所述的分布式***跟踪监控方法,其特征在于,所述统计规则包括统计时间段、指标项信息及统计项信息,所述管理服务器根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息,包括:
根据所述统计时间段从每一所述委托数据的指标时延监控时间中获取处于所述统计时间段内的时延计算值;
根据所述指标项信息包含的指标项从处于所述统计时间段内的时延计算值中获取每一指标项对应的目标时延计算值;
根据所述统计项信息包含的统计项对每一所述指标项的目标时延计算值分别进行统计,得到每一所述指标项与每一所述统计项对应的统计值作为每一所述指标项的时延统计信息。
7.根据权利要求1所述的分布式***跟踪监控方法,其特征在于,所述管理服务器根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息之后,还包括:
所述管理服务器根据预存的输出格式对所述时延统计信息进行格式处理得到对应的时延统计输出信息;
所述管理服务器根据预存的输出路径对所述时延统计输出信息进行输出。
8.一种分布式***跟踪监控***,其特征在于,所述***包括管理服务器及多个分布式服务器,所述管理服务器与每一所述分布式服务器建立网络连接以实现数据信息的传输;
所述分布式服务器包括:时间戳信息发送单元,用于若接收到委托数据,对所述委托数据进行处理并根据预置的信息生成规则生成与所述委托数据对应的时间戳信息后发送至所述管理服务器;
所述管理服务器包括:
时间信息获取单元,用于若接收到来自任一所述分布式服务器的时间戳信息,从所述时间戳信息中获取每一所述委托数据对应的时间信息;
指标时延监控时间获取单元,用于根据预置的时延计算规则从每一所述委托数据对应的时间信息中获取每一所述委托数据对应的指标时延监控时间;
时延统计信息获取单元,用于根据预置的统计规则对每一所述委托数据的指标时延监控时间进行整合统计,得到对应的时延统计信息。
9.一种分布式***跟踪监控***,其特征在于,所述***包括管理服务器及多个分布式服务器,所述管理服务器包括第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的第一计算机程序,所述分布式服务器包括第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序且所述第二处理器执行所述第二计算机程序以共同实现如权利要求1至7中任一项所述的分布式***跟踪监控方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有第一计算机程序和/或第二计算机程序,当所述第一计算机程序被第一处理器执行且所述第二计算机程序被第二处理器执行时共同实现如权利要求1至7任一项所述的分布式***跟踪监控方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110849956.9A CN113297037A (zh) | 2021-07-27 | 2021-07-27 | 分布式***跟踪监控方法、***及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110849956.9A CN113297037A (zh) | 2021-07-27 | 2021-07-27 | 分布式***跟踪监控方法、***及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113297037A true CN113297037A (zh) | 2021-08-24 |
Family
ID=77331118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110849956.9A Pending CN113297037A (zh) | 2021-07-27 | 2021-07-27 | 分布式***跟踪监控方法、***及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113297037A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115168080A (zh) * | 2022-09-08 | 2022-10-11 | 深圳华锐分布式技术股份有限公司 | 分布式***时延度量方法、装置、设备及介质 |
CN116662208A (zh) * | 2023-07-25 | 2023-08-29 | 华锐分布式(北京)技术有限公司 | 基于分布式挡板的交易测试方法、设备及介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039819A (zh) * | 2018-08-16 | 2018-12-18 | 深圳华锐金融技术股份有限公司 | 时延统计方法、装置、***及存储介质 |
-
2021
- 2021-07-27 CN CN202110849956.9A patent/CN113297037A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039819A (zh) * | 2018-08-16 | 2018-12-18 | 深圳华锐金融技术股份有限公司 | 时延统计方法、装置、***及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115168080A (zh) * | 2022-09-08 | 2022-10-11 | 深圳华锐分布式技术股份有限公司 | 分布式***时延度量方法、装置、设备及介质 |
CN116662208A (zh) * | 2023-07-25 | 2023-08-29 | 华锐分布式(北京)技术有限公司 | 基于分布式挡板的交易测试方法、设备及介质 |
CN116662208B (zh) * | 2023-07-25 | 2023-09-26 | 华锐分布式(北京)技术有限公司 | 基于分布式挡板的交易测试方法、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106105112B (zh) | 分析规则调整装置、分析规则调整***以及分析规则调整方法 | |
CN107302547B (zh) | 一种web业务异常检测方法及装置 | |
KR101672378B1 (ko) | 코드 리뷰 동안 테스트 커버리지 데이터를 디스플레이하기 위한 프로세스 | |
US8631331B2 (en) | Apparatus for network traffic classification benchmark | |
CN113297037A (zh) | 分布式***跟踪监控方法、***及介质 | |
CN110362473B (zh) | 测试环境的优化方法及装置、存储介质、终端 | |
US20150095892A1 (en) | Systems and methods for evaluating a change pertaining to a service or machine | |
CN111506489B (zh) | 测试方法、***、设备、服务器及存储介质 | |
US10600002B2 (en) | Machine learning techniques for providing enriched root causes based on machine-generated data | |
US7111779B2 (en) | System, method, and program for generating transaction profile for measuring and analyzing computer system performance | |
US10447565B2 (en) | Mechanism for analyzing correlation during performance degradation of an application chain | |
KR100803889B1 (ko) | 클라이언트 단말로 제공되는 서비스 성능 분석 방법 및시스템 | |
CN110532174B (zh) | 计算增量代码覆盖率的方法、装置、计算机设备及存储介质 | |
CN107967488B (zh) | 一种服务器的分类方法及分类*** | |
CN114117311B (zh) | 数据访问风险检测方法、装置、计算机设备及存储介质 | |
JP2010117757A (ja) | 性能監視システムおよび性能監視方法 | |
US10216776B2 (en) | Variance based time series dataset alignment | |
CN108156141B (zh) | 一种实时数据识别方法、装置及电子设备 | |
WO2007052327A1 (ja) | 性能異常分析装置、方法及びプログラム、並びに性能異常分析装置の分析結果表示方法 | |
KR101953558B1 (ko) | 스마트 기기 결함 관리 장치 및 방법 | |
CN111611146A (zh) | 一种微服务故障预测方法和装置 | |
CN110490132B (zh) | 数据处理方法和装置 | |
CN110177024B (zh) | 热点设备的监控方法及客户端、服务端、*** | |
Wang et al. | Analyzing and monitoring kubernetes microservices based on distributed tracing and service mesh | |
CN109239750B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210824 |