CN110187980A - 消息队列监控方法、装置、电子设备及可读存储介质 - Google Patents

消息队列监控方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN110187980A
CN110187980A CN201910320042.6A CN201910320042A CN110187980A CN 110187980 A CN110187980 A CN 110187980A CN 201910320042 A CN201910320042 A CN 201910320042A CN 110187980 A CN110187980 A CN 110187980A
Authority
CN
China
Prior art keywords
time
consumption
message
delay
message queue
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.)
Granted
Application number
CN201910320042.6A
Other languages
English (en)
Other versions
CN110187980B (zh
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.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology 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 Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN201910320042.6A priority Critical patent/CN110187980B/zh
Publication of CN110187980A publication Critical patent/CN110187980A/zh
Application granted granted Critical
Publication of CN110187980B publication Critical patent/CN110187980B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0203Market surveys; Market polls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种消息队列监控方法,包括:获取目标消息队列的消息生成时间和消息消费时间;根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。由此解决了现有的消息队列监控方法报警策略操作繁琐且容易导致消息监控不准确的技术问题。取得了提高消息队列监控的操作便利性以及准确性的有益效果。

Description

消息队列监控方法、装置、电子设备及可读存储介质
技术领域
本发明涉及计算机技术领域,具体涉及一种消息队列监控方法、装置、电子设备及可读存储介质。
背景技术
随着“大数据”时代的到来,越来越多的企业开始挖掘用户行为数据的商业价值,利用用户行为数据进行实时的数字营销。在实时数据处理中,通常会使用消息队列作为数据的存储方案。而且随着用户数量越来越多,在线上使用的消息队列也越来越多,如何对消息生产和消费的链路进行监控是一个巨大的挑战。现有对队列消费进度的报警,原理上都是通过对比生产者和消费者的生产和消费进度,进行监控报警。
目前方案延迟计算公式是根据生产者和消费者的生产速度差计算。影响监控指标的是生产和消费的速度差。但是在实际生产中,产品的数据实效性的指标通是时间单位。因此需要的监控指标是延迟时间,但目前的监控项是延迟消息条数,则需要针对目前的监控项进行进一步的转化计算,导致操作繁琐。而且,由于不同队列消息的生产速度和消费速度的绝对值有差异,同一消息队列在不同时间的生产速度也有差异,如果只监控消费进度,那么当数据本身存在延迟时,比如上游停止生产等场景,则无法监控出异常。所以基于速度差的报警策略操作繁琐且容易导致消息监控不准确。
发明内容
本发明提供一种消息队列监控方法、装置、电子设备及可读存储介质,以部分或全部解决现有技术中消息队列监控过程相关的上述问题。
依据本发明第一方面,提供了一种消息队列监控方法,包括:
获取目标消息队列的消息生成时间和消息消费时间;
根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;
在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。
根据本发明的第二方面,提供了一种消息队列监控装置,包括:
生成消费时间获取模块,用于获取目标消息队列的消息生成时间和消息消费时间;
监控时间指标获取模块,用于根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;
延迟预警模块,用于在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。
根据本发明的第三方面,提供了一种电子设备,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现前述的消息队列监控方法。
根据本发明的第四方面,提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述的消息队列监控方法。
根据本发明的消息队列监控方法,可以获取目标消息队列的消息生成时间和消息消费时间;根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。由此解决了现有的消息队列监控方法报警策略操作繁琐且容易导致消息监控不准确的技术问题。取得了提高消息队列监控的操作便利性以及准确性的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明实施例的一种消息队列监控方法的步骤流程图之一;
图2示出了根据本发明实施例的一种消息队列监控方法的步骤流程图之二;
图3示出了根据本发明实施例的一种消息队列监控装置的结构示意图之一;以及
图4示出了根据本发明实施例的一种消息队列监控装置的结构示意图之二。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了本发明实施例中一种消息队列监控方法的步骤流程图。
步骤110,获取目标消息队列的消息生成时间和消息消费时间。
如前述,实际生产中,产品的数据实效性指标通常用时间单位,比如数据的更新延迟不超过10秒,因此需要的监控指标是延迟时间。因此在本发明实施例中,可以获取需要进行队列检测的目标消息队列的消息生成时间和消息消费时间。
而且,在本发明实施例中,可以通过任何可用方法获取目标消息队列的消息生成时间和消息消费时间,对此本发明实施例不加以限定。例如,可以在消息生成时记录当前时间作为该消息的生成时间,而在消息被消费时则可以相应记录当前时间作为该消息的消费时间,进而则可以获取得到目标消息队列中包含的各个消息的生成时间和消费时间。
而在实际应用中,需要实时监控消息队列,那么此时则需要获知其当前的消息生成时间和消息消费时间,具体的可以获取最新生成消息的生成时间作为相应消息队列的消息生成时间,而将最新消费消息的消费时间作为相应消息队列的消息消费时间;或者,也可以取最新生成消息所在队列分区中各个消息的生成时间平均值作为目标消息队列当前的消息生成时间,并以最新消费消息所在队列分区中各个消息的消费时间平均值作为目标消息队列当前的消费生成时间;或者,也可以取最新生成消息所在队列分区中各个消息的生成时间中的最小值,也即相应分区中最早生成的消息的生成时间,作为目标消息队列当前的消息生成时间,并以最新消费消息所在队列分区中各个消息的消费时间中的最小值,也即相应分区中最早消费的消息的消费时间,作为目标消息队列当前的消费生成时间;等等。具体的可以根据需求进行预先设置,对此本发明实施例不加以限定。
步骤120,根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种。
在获取得到目标消息队列的消息生成时间和消息消费时间之后,则可以根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标。而且,在本发明实施例中,监控时间指标可以包括但不限于消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种。
其中,消费延迟时间可以理解为目标消息队列的消息消费时间相对于当前时间的延迟,可以表征为当前时间与消息消费时间的差值;生产延迟时间可以理解为目标消息队列的消息生成时间相对于当前时间的延迟,可以表征为当前时间与消息生成时间的差值;而生产消费间隔时间可以理解为目标消息队列的消息消费时间相对于消息生产时间的延迟,可以表征为消息消费时间与消息生产时间之间的差值。
此时,当数据本身存在延迟时,比如上游停止生产等场景,仍然能够通过监控时间指标中的生产延迟时间进行延迟预警,可以实现全方位的监控消息队列。而且,根据公式(vp-vc)*t/vp=delay可见,生产者和消费者间的延迟时间不受速度的绝对值影响。因此避免了由于消息生产速率正常波动带来的监控指标抖动。其中,vp表示消息生产速度,vc表示消息消费速度,t表示时间,delay表示延迟时间。
当然,在本发明实施例中,各项监控时间指标与消息生成时间、所述消息消费时间和当前时间之间的对应关系可以根据需求进行预先设置,对此本发明实施例不加以限定。例如,可以根据需求或经验等预先设置消息生成时间、消息消费时间和当前时间的权重,进而将消息生成时间、消息消费时间和当前时间进行加权后,按照上述方式获取各项监控时间指标,等等。
步骤130,在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。
为了方便相关人员及时获知目标消息队列出现消息延迟的情况,在本发明实施例中,在所述监控时间指标超出预设的时间阈值的情况下,则可以针对所述目标消息队列进行延迟预警。具体的延迟预警的方式可以根据需求进行预先设置,对此本发明实施例不加以限定。而且,为了准确提示当前出现消息延迟的目标消息队列,可以在进行延迟预警的同时提示延迟预警所对应的目标消息队列的消息队列标识,以便相关人员进行查看并修正。
而且,如前述监控时间指标可以包括但不限于消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种。那么则可以分别针对每项监控时间指标设置相应的时间阈值,如果目标消息队列的至少一项监控时间指标超出其对应的时间阈值,则可以针对目标消息队列进行延迟预警。当然,也可以设置在获取得到的每项监控时间指标都超出相应的时间阈值的情况下,才针对目标消息队列进行延迟预警。而且还可以在延迟预警的同时提示本次延迟预警的原因,例如是哪项监控时间指标超出其对应的时间阈值导致的延迟预警,相应监控时间指标的溢出值,等等。
根据本发明的消息队列监控方法,可以获取目标消息队列的消息生成时间和消息消费时间;根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。取得了提高消息队列监控的操作便利性以及准确性的有益效果。
参照图2,在本发明实施例中,所述步骤110进一步可包括:
子步骤111,获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳。
在实际应用中,消息队列中的消息并不是固定不变的,而可能是动态变化的,因此目标消息队列在不同时刻的消息生成时间和消息消费时间一般也不是固定的,而且,消息队列在存储消息时,可以将消息队列拆分为多个分区,每个分区是一个有序的,不可变的记录序列。在本发明实施例中,为了获取目标消息队列当前的消息生成时间和消息消费时间,则可以获取目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳。其中,时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。在本发明实施例中,可以通过任何可用方式生成各个消息的生成时间戳和消费时间戳,生成时间戳和消费时间戳的具体生成方式可以根据需求进行预先设置,对此本发明实施例不加以限定。
可选地,在本发明实施例中,所述子步骤111,进一步可以包括:获取所述队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳;其中,所述生成时间戳和消费时间戳的生成策略相同。
在本发明实施例中,为了提高生成时间戳和消费时间戳的准确性,可以设置基于相同的策略使消息的生产者和消费者针对一条消息生成一个时间戳,并作为事件时间上报。比如使用日志的生成时间,或者数据的业务时间。将该时间戳作为监控指标定时上报。那么则可以获取得到最新消息所在队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳,而且为了避免由于时间戳生成策略不一致导致的非必要误差,可以设置生成时间戳和消费时间戳的生成策略相同。具体的生成策略可以根据需求进行预先设置,对此本发明实施例不加以限定。
子步骤112,获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间。
子步骤113,获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。
对于同样的当前时间,如果目标消息队列的消息生成时间越早,当前时间与消息生成时间之间的差值就越大,那么生产延迟时间则越大,则会导致针对生产延迟时间的延迟预警会越早发出;同样地,对于同样的当前时间,如果目标消息队列的消息消费时间越早,当前时间与消息消费时间之间的差值就越大,那么消费延迟时间则越大,则会导致针对消费延迟时间的延迟预警会越早发出。
由此可见,为了提高消息延迟预警的及时性,可以获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间,以及获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。
参照图2,在本发明实施例中,所述步骤120进一步可包括:
子步骤121,获取所述当前时间和所述消息消费时间的差值,得到所述目标消息队列的消费延迟时间;
和/或,子步骤122,获取所述当前时间和所述消息生成时间的差值,得到所述目标消息队列的生成延迟时间;
和/或,子步骤123,获取所述消息消费时间和所述消息生成时间的差值,得到所述目标消息队列的生产消费间隔时间。
在本发明实施例中,根据设置的监控时间指标所包含的具体内容,可以执行步骤121-123中的任意至少一个步骤,而且对各个步骤之间的执行顺序并不做限定。
参照图2,在本发明实施例中,所述步骤130进一步可包括:
子步骤131,在所述生成延迟时间超出第一时间阈值的情况下,针对所述目标消息进行生成延迟预警;
和/或,子步骤132,在所述消费延迟时间超出第二时间阈值的情况下,针对所述目标消息进行第一消费延迟预警;
和/或,子步骤133,在所述生产消费间隔时间超出第三时间阈值的情况下,针对所述目标消息进行第二消费延迟预警。
在本发明实施例中,根据设置的监控时间指标所包含的具体内容,可以执行步骤131-133中的任意至少一个步骤,而且对各个步骤之间的执行顺序并不做限定。
其中的第一时间阈值、第二时间阈值和第三时间阈值都可以根据需求进行预先设置,而且生成延迟预警、第一消费延迟预警和第二消费延迟预警的具体预警方式也都可以根据需求进行预先设置,对此本发明实施例均不加以限定。
而且,如果针对同一目标消息队列,获取到的监控时间指标包括上述的消费延迟时间、生产延迟时间、生产消费间隔时间,而且生成延迟时间超出第一时间阈值,消费延迟时间超出第二时间阈值,生产消费间隔时间超出第三时间阈值,那么此时则可以针对该目标消息队列同时进行生成延迟预警、第二消费延迟预警以及第二消费延迟预警。
在本发明实施例中,通过获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳;获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间;获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。以及,获取所述队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳;其中,所述生成时间戳和消费时间戳的生成策略相同。提高了目标消息队列消息生成时间和消息消费时间的获取便利性以及准确性,进而提高延迟预警的及时性以及消息监控的准确性。
而且,在本发明实施例中,可以获取所述当前时间和所述消息消费时间的差值,得到所述目标消息队列的消费延迟时间;和/或,获取所述当前时间和所述消息生成时间的差值,得到所述目标消息队列的生成延迟时间;和/或,获取所述消息消费时间和所述消息生成时间的差值,得到所述目标消息队列的生产消费间隔时间。并且,在所述生成延迟时间超出第一时间阈值的情况下,针对所述目标消息进行生成延迟预警;和/或,在所述消费延迟时间超出第二时间阈值的情况下,针对所述目标消息进行第一消费延迟预警;和/或,在所述生产消费间隔时间超出第三时间阈值的情况下,针对所述目标消息进行第二消费延迟预警。可以进一步提高消息队列监控的准确性和全面性。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明实施例中一种消息队列监控装置的结构示意图。
生成消费时间获取模块310,用于获取目标消息队列的消息生成时间和消息消费时间。
监控时间指标获取模块320,用于根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种。
延迟预警模块330,用于在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。
根据本发明的消息队列监控方法,可以获取目标消息队列的消息生成时间和消息消费时间;根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。取得了提高消息队列监控的操作便利性以及准确性的有益效果。
参照图4,在本发明实施例中,所述生成消费时间获取模块310,进一步可以包括:
时间戳获取子模块311,用于获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳;
可选地,在本发明实施例中,所述时间戳获取子模块311,还用于获取所述队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳;其中,所述生成时间戳和消费时间戳的生成策略相同。
消息生成时间获取子模块312,用于获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间;
消息消费时间获取子模块313,用于获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。
参照图4,在本发明实施例中,所述监控时间指标获取模块320,进一步可以包括:
消费延迟时间获取子模块321,用于获取所述当前时间和所述消息消费时间的差值,得到所述目标消息队列的消费延迟时间;
和/或,生成延迟时间获取子模块322,用于获取所述当前时间和所述消息生成时间的差值,得到所述目标消息队列的生成延迟时间;
和/或,生产消费间隔时间获取子模块323,用于获取所述消息消费时间和所述消息生成时间的差值,得到所述目标消息队列的生产消费间隔时间。
参照图4,在本发明实施例中,所述延迟预警模块330,进一步可以包括:
生成延迟预警子模块331,用于在所述生成延迟时间超出第一时间阈值的情况下,针对所述目标消息进行生成延迟预警;
和/或,第一消费延迟预警子模块332,用于在所述消费延迟时间超出第二时间阈值的情况下,针对所述目标消息进行第一消费延迟预警;
和/或,第二消费延迟预警子模块333,用于在所述生产消费间隔时间超出第三时间阈值的情况下,针对所述目标消息进行第二消费延迟预警。
在本发明实施例中,通过获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳;获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间;获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。以及,获取所述队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳;其中,所述生成时间戳和消费时间戳的生成策略相同。提高了目标消息队列消息生成时间和消息消费时间的获取便利性以及准确性,进而提高延迟预警的及时性以及消息监控的准确性。
而且,在本发明实施例中,可以获取所述当前时间和所述消息消费时间的差值,得到所述目标消息队列的消费延迟时间;和/或,获取所述当前时间和所述消息生成时间的差值,得到所述目标消息队列的生成延迟时间;和/或,获取所述消息消费时间和所述消息生成时间的差值,得到所述目标消息队列的生产消费间隔时间。并且,在所述生成延迟时间超出第一时间阈值的情况下,针对所述目标消息进行生成延迟预警;和/或,在所述消费延迟时间超出第二时间阈值的情况下,针对所述目标消息进行第一消费延迟预警;和/或,在所述生产消费间隔时间超出第三时间阈值的情况下,针对所述目标消息进行第二消费延迟预警。可以进一步提高消息队列监控的准确性和全面性。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在本发明实施例中还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现前述的任意一种消息队列监控方法。
在本发明实施例中还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述的任意一种消息队列监控方法的步骤。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的消息队列监控设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (12)

1.一种消息队列监控方法,其特征在于,包括:
获取目标消息队列的消息生成时间和消息消费时间;
根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;
在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。
2.根据权利要求1所述的方法,其特征在于,所述获取目标消息队列的消息生成时间和消息消费时间的步骤,包括:
获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳;
获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间;
获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。
3.根据权利要求2所述的方法,其特征在于,获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳的步骤,包括:
获取所述队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳;
其中,所述生成时间戳和消费时间戳的生成策略相同。
4.根据权利要求1所述的方法,其特征在于,所述根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标的步骤,包括:
获取所述当前时间和所述消息消费时间的差值,得到所述目标消息队列的消费延迟时间;
和/或,获取所述当前时间和所述消息生成时间的差值,得到所述目标消息队列的生成延迟时间;
和/或,获取所述消息消费时间和所述消息生成时间的差值,得到所述目标消息队列的生产消费间隔时间。
5.根据权利要求4所述的方法,其特征在于,所述在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警的步骤,包括:
在所述生成延迟时间超出第一时间阈值的情况下,针对所述目标消息进行生成延迟预警;
和/或,在所述消费延迟时间超出第二时间阈值的情况下,针对所述目标消息进行第一消费延迟预警;
和/或,在所述生产消费间隔时间超出第三时间阈值的情况下,针对所述目标消息进行第二消费延迟预警。
6.一种消息队列监控装置,其特征在于,包括:
生成消费时间获取模块,用于获取目标消息队列的消息生成时间和消息消费时间;
监控时间指标获取模块,用于根据所述消息生成时间、所述消息消费时间和当前时间,获取所述目标消息队列的监控时间指标;所述监控时间指标包括消费延迟时间、生产延迟时间、生产消费间隔时间中的至少一种;
延迟预警模块,用于在所述监控时间指标超出预设的时间阈值的情况下,针对所述目标消息队列进行延迟预警。
7.根据权利要求6所述的装置,其特征在于,所述生成消费时间获取模块,包括:
时间戳获取子模块,用于获取所述目标消息队列的最新消息所在队列分区中各个消息的生成时间戳和消费时间戳;
消息生成时间获取子模块,用于获取所述生成时间戳中的最小值,作为所述目标消息队列的消息生成时间;
消息消费时间获取子模块,用于获取所述消费时间戳中的最小值,作为所述目标消息队列的消息消费时间。
8.根据权利要求7所述的装置,其特征在于,所述时间戳获取子模块,还用于获取所述队列分区中各个消息的生产者上报的生成时间戳,和各个所述消息的消费者上报的消费时间戳;其中,所述生成时间戳和消费时间戳的生成策略相同。
9.根据权利要求6所述的装置,其特征在于,所述监控时间指标获取模块,包括:
消费延迟时间获取子模块,用于获取所述当前时间和所述消息消费时间的差值,得到所述目标消息队列的消费延迟时间;
和/或,生成延迟时间获取子模块,用于获取所述当前时间和所述消息生成时间的差值,得到所述目标消息队列的生成延迟时间;
和/或,生产消费间隔时间获取子模块,用于获取所述消息消费时间和所述消息生成时间的差值,得到所述目标消息队列的生产消费间隔时间。
10.根据权利要求9所述的装置,其特征在于,所述延迟预警模块,包括:
生成延迟预警子模块,用于在所述生成延迟时间超出第一时间阈值的情况下,针对所述目标消息进行生成延迟预警;
和/或,第一消费延迟预警子模块,用于在所述消费延迟时间超出第二时间阈值的情况下,针对所述目标消息进行第一消费延迟预警;
和/或,第二消费延迟预警子模块,用于在所述生产消费间隔时间超出第三时间阈值的情况下,针对所述目标消息进行第二消费延迟预警。
11.一种电子设备,其特征在于,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5中的任一项所述的消息队列监控方法。
12.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1-5中的任一项所述的消息队列监控方法。
CN201910320042.6A 2019-04-19 2019-04-19 消息队列监控方法、装置、电子设备及可读存储介质 Active CN110187980B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910320042.6A CN110187980B (zh) 2019-04-19 2019-04-19 消息队列监控方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910320042.6A CN110187980B (zh) 2019-04-19 2019-04-19 消息队列监控方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN110187980A true CN110187980A (zh) 2019-08-30
CN110187980B CN110187980B (zh) 2021-11-19

Family

ID=67714824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910320042.6A Active CN110187980B (zh) 2019-04-19 2019-04-19 消息队列监控方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110187980B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110647547A (zh) * 2019-09-20 2020-01-03 北京百分点信息科技有限公司 消费延迟监控方法、装置、电子设备及计算机可读存储介质
CN111552575A (zh) * 2019-12-31 2020-08-18 远景智能国际私人投资有限公司 基于消息队列的消息消费方法、装置及设备
CN112463416A (zh) * 2020-12-17 2021-03-09 中国农业银行股份有限公司 消息队列中数据处理的方法、装置、设备及存储介质
CN114490091A (zh) * 2022-04-06 2022-05-13 江苏金恒信息科技股份有限公司 工业数据采集管理系统中监控规则引擎性能的方法及装置
CN114844844A (zh) * 2022-04-25 2022-08-02 平安普惠企业管理有限公司 延时消息处理方法、装置、设备及存储介质
CN115174346A (zh) * 2022-09-02 2022-10-11 平安银行股份有限公司 基于消息队列的延时告警方法
CN115766479A (zh) * 2022-09-21 2023-03-07 天津市普迅电力信息技术有限公司 一种预测消息队列消息积压的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4341535B2 (ja) * 2004-12-02 2009-10-07 沖電気工業株式会社 ネットワーク監視方法及び監視装置
CN102244603B (zh) * 2010-05-11 2014-09-03 华为技术有限公司 传输承载时间的报文的方法、设备及系统
CN108932182A (zh) * 2018-07-06 2018-12-04 许继集团有限公司 一种消息总线性能测试方法及系统
CN109558306A (zh) * 2018-10-19 2019-04-02 深圳点猫科技有限公司 一种基于教育系统的数据采集漏报监控方法及电子设备
CN109560976A (zh) * 2017-09-25 2019-04-02 北京国双科技有限公司 一种消息延迟的监控方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4341535B2 (ja) * 2004-12-02 2009-10-07 沖電気工業株式会社 ネットワーク監視方法及び監視装置
CN102244603B (zh) * 2010-05-11 2014-09-03 华为技术有限公司 传输承载时间的报文的方法、设备及系统
CN109560976A (zh) * 2017-09-25 2019-04-02 北京国双科技有限公司 一种消息延迟的监控方法及装置
CN108932182A (zh) * 2018-07-06 2018-12-04 许继集团有限公司 一种消息总线性能测试方法及系统
CN109558306A (zh) * 2018-10-19 2019-04-02 深圳点猫科技有限公司 一种基于教育系统的数据采集漏报监控方法及电子设备

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110647547A (zh) * 2019-09-20 2020-01-03 北京百分点信息科技有限公司 消费延迟监控方法、装置、电子设备及计算机可读存储介质
CN111552575A (zh) * 2019-12-31 2020-08-18 远景智能国际私人投资有限公司 基于消息队列的消息消费方法、装置及设备
CN111552575B (zh) * 2019-12-31 2023-09-12 远景智能国际私人投资有限公司 基于消息队列的消息消费方法、装置及设备
CN112463416A (zh) * 2020-12-17 2021-03-09 中国农业银行股份有限公司 消息队列中数据处理的方法、装置、设备及存储介质
CN114490091A (zh) * 2022-04-06 2022-05-13 江苏金恒信息科技股份有限公司 工业数据采集管理系统中监控规则引擎性能的方法及装置
CN114844844A (zh) * 2022-04-25 2022-08-02 平安普惠企业管理有限公司 延时消息处理方法、装置、设备及存储介质
CN115174346A (zh) * 2022-09-02 2022-10-11 平安银行股份有限公司 基于消息队列的延时告警方法
CN115174346B (zh) * 2022-09-02 2023-03-28 平安银行股份有限公司 基于消息队列的延时告警方法
CN115766479A (zh) * 2022-09-21 2023-03-07 天津市普迅电力信息技术有限公司 一种预测消息队列消息积压的方法

Also Published As

Publication number Publication date
CN110187980B (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN110187980A (zh) 消息队列监控方法、装置、电子设备及可读存储介质
US8904243B2 (en) Event management systems and methods
US11115295B2 (en) Methods and systems for online monitoring using a variable data
CN107111799A (zh) 作业调度和监测
CN106371968B (zh) 一种对实时计算进行监控的方法和装置
WO2015139164A1 (zh) 一种任务调度的方法、装置及设备
CN109582529A (zh) 一种报警阈值的设置方法及装置
CN110537170B (zh) 分析大规模数据处理作业的方法、系统以及计算机可读存储设备
CN108768790A (zh) 分布式搜索集群监控方法及装置、计算设备、存储介质
US20180143897A1 (en) Determining idle testing periods
CN113360041B (zh) 一种显示方法、装置、电子设备及存储介质
WO2021011065A1 (en) Time-series data condensation and graphical signature analysis
CN113342608B (zh) 流式计算引擎任务的监控方法及装置
CN113221096A (zh) 一种在混沌工程中随机事件相关性分析方法及系统
US9235424B1 (en) Managing the performance of a data processing system through visualization of performance metrics data via a cognitive map
CN107908728B (zh) 一种在线监测数据历史值的储存及访问方法
CN104424035B (zh) 用于对存储访问频率的间歇采样的方法和系统
CN104142885B (zh) 一种用于对被测程序进行异常测试的方法和装置
GB2560749A (en) Trace data representation
CN105739947A (zh) 一种寄存器冲突的检测方法及装置
CN103150612A (zh) 预测告警方法及装置
CN108959028A (zh) 磁盘生命周期分析方法及装置
JP2006226846A (ja) データロガー装置およびそのデータ収集方法
KR20190011532A (ko) 레이더 시스템의 실시간 항적 정보 표시 장치 및 방법
CN110851464B (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