CN110995618A - 一种消息处理方法、装置、电子设备及可读存储介质 - Google Patents

一种消息处理方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN110995618A
CN110995618A CN201911048198.XA CN201911048198A CN110995618A CN 110995618 A CN110995618 A CN 110995618A CN 201911048198 A CN201911048198 A CN 201911048198A CN 110995618 A CN110995618 A CN 110995618A
Authority
CN
China
Prior art keywords
message
service
identifier
queue
source
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
CN201911048198.XA
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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and 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 QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201911048198.XA priority Critical patent/CN110995618A/zh
Publication of CN110995618A publication Critical patent/CN110995618A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • H04L47/562Attaching a time tag to queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提出的一种消息处理方法、装置、电子设备及可读存储介质,接收待处理的消息,若消息的来源为消息服务端的业务队列,计算消息的延迟时间,并判断延迟时间是否大于阈值,若大于阈值,则说明该消息为业务队列中积压的消息,为了防止由于处理积压消息导致新消息被延迟处理,先不对该延迟时间大于阈值的消息进行比较耗时的消息处理业务,而是将其转发至预设的缓冲队列中,由于转发消息消耗的时间远远少于执行消息处理业务消耗的时间,所以可以很快的将积压的消息从业务队列中移除,避免了后续新放入业务队列中消息因为业务队列中的消息积压导致的延迟处理,而对延迟时间不大于阈值的消息执行预设的消息处理业务进行正常处理即可。

Description

一种消息处理方法、装置、电子设备及可读存储介质
技术领域
本发明实施例涉及信息处理技术领域,具体涉及一种消息处理方法、装置、电子设备及可读存储介质。
背景技术
分布式消息服务(Distributed Message Service,简称DMS)是一项基于高可用分布式集群技术的消息中间件服务,提供了可靠且可扩展的托管消息队列,用于收发消息和存储消息。在当前互联网、互联网企业中被广泛应用于跨系统的数据更新,它可以对数据生产方和消费方进行解耦,减少相互之间的依赖。一般来说,分布式消息服务系统由消息生产端producer,消息服务端broker和消息处理端consumer三者组成。producer负责消息的创建并发送到broker端,然后consumer可以从broker获取消息进行处理。在消息生产高峰时段,消息量很大,由于可以暂存在broker端,consumer可以在一个相对较长的时间内,以平稳的速率消费在高峰期堆积在broker上的消息,从而使得consumer不会被突发的大量消息流量所冲击,减少了consumer端的处理压力,避免了consumer被突发流量打垮的风险。
但是在producer创建消息的高峰期broker中会积压大量的消息,consumer完全处理完这些消息需要一个相对较长的时间,在积压的消息被处理完之前,后续producer新创建的消息都会被放入积压的队列中而不能及时消费,导致新消息的延迟非常大。
发明内容
为了解决现在由于消息积压导致的新消息延迟的技术问题,本发明实施例提供了一种消息处理方法、装置、电子设备及可读存储介质。
有鉴于此,第一方面,本发明实施例提供一种消息处理方法,应用于消息处理端,该方法包括:
接收待处理的消息;
若接收到的消息的来源为消息服务端的业务队列,计算消息的延迟时间;
判断消息的延迟时间是否大于阈值;
若消息的延迟时间大于阈值,将消息发送至预设的缓冲队列;
若消息的延迟时间不大于阈值,则对消息执行预设的消息处理业务。
在一种可能的实现方式中,该方法还包括:
若消息的来源为预设的缓冲队列,则对消息执行预设的消息处理业务。
在一种可能的实现方式中,接收待处理的消息之后,方法还包括:
获取接收到的消息中携带的来源标识;
获取预设的消息服务端的业务队列的标识和预设的缓冲队列的标识;
将来源标识分别与业务队列的标识和缓冲队列的标识进行比对;
若来源标识与业务队列的标识相匹配,则确定消息的来源为消息服务端的业务队列;
若来源标识与缓冲队列的标识相匹配,则确定消息的来源为预设的缓冲队列。
在一种可能的实现方式中,计算消息的延迟时间包括:
获取消息携带的生成时间,生成时间为消息被消息生产端创建的时间;
计算当前时间和生成时间的差值,将差值作为消息的延迟时间。
第二方面,本发明实施例还提供了一种消息处理装置,应用于消息处理端,该装置包括:
接收模块,用于接收待处理的消息;
计算模块,用于若接收到的消息的来源为消息服务端的业务队列,计算消息的延迟时间;
判断模块,用于判断消息的延迟时间是否大于阈值;
转发模块,用于若消息的延迟时间大于阈值,将消息发送至预设的缓冲队列;
第一处理模块,用于若消息的延迟时间不大于阈值,则对消息执行预设的消息处理业务。
在一种可能的实现方式中,该装置还包括:
第二处理模块,用于若消息的来源为预设的缓冲队列,则对消息执行预设的消息处理业务。
在一种可能的实现方式中,该装置还包括:
来源确定模块,用于在接收到待处理的消息之后,获取接收到的消息中携带的来源标识,获取预设的消息服务端的业务队列的标识和预设的缓冲队列的标识,将来源标识分别与业务队列的标识和缓冲队列的标识分别进行比对,若来源标识与业务队列的标识相匹配,则确定消息的来源为消息服务端的业务队列,若来源标识与缓冲队列的标识相匹配,则确定消息的来源为预设的缓冲队列。
在一种可能的实现方式中,计算模块计算消息的延迟时间包括:
获取消息携带的生成时间,生成时间为消息被消息生产端创建的时间;
计算当前时间和生成时间的差值,将差值作为消息的延迟时间。
第三方面,本发明实施例还提供了一种电子设备,包括:处理器和存储器,处理器用于执行存储器中存储的数据处理程序,以实现第一方面的消息处理方法。
第四方面,本发明实施例还提供了一种可读存储介质,可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现第一方面的消息处理方法。
相比现有技术,本发明实施例提出的一种消息处理方法,接收待处理的消息,若消息的来源为消息服务端的业务队列,计算该消息的延迟时间,并判断延迟时间是否大于阈值,若大于阈值,则说明该消息为业务队列中积压的消息,为了防止由于处理积压消息导致新消息被延迟处理,本方案在确定消息是业务队列中的积压消息时,先不对该消息执行消息处理业务,而是将其转发至预设的缓冲队列中,由于转发消息消耗的时间远远少于执行消息处理业务消耗的时间,所以本方案可以很快的将积压消息从业务队列中移除,避免了后续新放入业务队列中消息因为业务队列中的消息积压导致的延迟处理,而对延迟时间不大于阈值的消息执行预设的消息处理业务进行正常处理即可。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种通信系统的示意图;
图2为本发明实施例提供的一种消息处理方法的流程图;
图3为本发明实施例提供的一种消息处理装置的框图;
图4为本发明实施例提供的一种电子设备的框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为一种通信系统,如图1所示,该通信系统包括消息生产端101、消息服务端102和消息处理端103,消息服务端102分别与消息生产端101和消息处理端103通信连接。
其中,消息生产端101用于创建消息,并将创建的消息发送至消息服务端102。
消息服务端102包括业务队列1021,其中业务队列1021用于存储消息生产端101发送的消息,并且消息服务端102还可以将业务队列1021中存储的消息发送至消息处理端103。
消息服务端103中设有用于对消息进行处理和消费的消息处理模块1031,消息处理模块1031具有消息接收功能,在消息接收功能开启的状态下,接收消息服务端102发送的业务队列1021中的消息,并对接收的消息进行处理。
由于消息处理端103处理消息的速度远小于消息生产端101创建消息的速度,所以在消息生产端102创建消息的高峰期,消息服务端102的业务队列1021中会积压大量的消息,消息处理端103完全处理完这些消息需要一个相对较长的时间,在积压的消息被处理完之前,后续消息生产端101新创建的消息都会被放入积压的业务队列1021中而不能及时消费,导致新消息的延迟非常大。
为了解决上述问题,本实施例在消息处理端103中增设了缓冲队列1032,缓冲队列1032可以接收消息处理模块1031发送的消息,且消息处理端103可以将缓冲队列1032中存储的消息发送至消息处理模块1031。在应用过程中,消息处理模块1031可以将接收到的消息服务端102发送的业务队列1021中的消息转发至缓冲队列1031中,从而减少业务队列1021中积压的消息,消息处理端1031在消息接收功能开启的状态下可以同时接收业务队列1021和缓冲队列1032中存储的消息,并且对接收的消息进行处理。在一种可能的实现方式中,为了保证消息处理模块1031可以同时处理来自业务队列1021和缓冲队列1032中的消息,可以在消息处理模块1031中配置多台服务器,将来自业务队列1021的消息和来自缓冲队列1032的消息分配给不同的服务器进行同时处理。
图2为本发明实施例提供的一种消息处理方法的流程图,应用于消息处理端,如图2所示,该方法包括下述步骤:
S21.接收待处理的消息。
在本实施例中,消息处理端可以接收消息服务端中业务队列和缓冲队列发送的消息。
为了便于确定消息的来源,消息中可以携带用于确定来源的信息。
在一中可能的实现方式中,消息中可以携带来源标识,通过消息中携带的来源标识就可以确定消息的来源,例如,来自业务队列的消息,其携带的来源标识就是业务队列的标识(例如业务队列的ID等唯一表示),来自于缓冲队列的消息,其携带的来源标识就是缓冲队列的标识(例如缓冲队列的ID等唯一标识)。
S22.若接收到的消息的来源为消息服务端的业务队列,计算消息的延迟时间。
在本实施例中,消息处理端可以接收来自消息服务端中业务队列的消息,也可以接收来自预设的缓冲队列的消息。
其中业务队列用于接收和存储消息生产端产生的消息,并根据先进先出原则向消息处理端发送存储的消息,当业务队列中有消息积压是就会导致消息生产端新创建的消息被滞后,无法在预定时间(根据需求设定的时间)内将该发送至消息处理端进行处理。缓冲队列是设置在消息处理端中的,其目的是转存消息处理端接收的消息,所以其与消息生产端没有联系,因此,即使缓冲队列中发生了消息积压也不会对消息生产端新创建的消息有影响,而本实施例目的是解决消息生产端新创建的消息被滞后处理的问题,所以只需判断业务队列中是否发生消息积压即可。因此,在执行S22前,先要对消息的来源进行判断。
在一种可能的实现方式中,可以通过下述方式来判断消息的来源:
S221.获取接收到的消息中携带的来源标识。
对接收到的消息进行解析,获取其中携带的来源标识,消息的解析可以采用现有的成熟技术,过程此处不再赘述。
S222.获取预设的消息服务端的业务队列的标识和预设的缓冲队列的标识。
在本实施例中,业务队列和缓冲队列都是预先建立的,为了对不同业务队列和缓冲队列进行区分,在队列建立时或建立后,为业务队列和缓冲队列创建不同的唯一标识,便于区分各队列。
因为本实施例,是通过将消息中携带的来源标识分别与消息服务端的业务队列的标识和缓冲队列的标识进行比对来确定消息的来源,所以在比对前需要先获取消息服务端的业务队列的标识和缓冲队列的标识。
S223.将来源标识分别与业务队列的标识和缓冲队列的标识分别进行比对。
在本实现方式中,将消息中的来源标识与获取的所有队列的标识进行一一比对,根据比对结果来确定消息的来源。
S224.若来源标识与业务队列的标识相匹配,则确定消息的来源为消息处理端的业务队列。
在一种可能的实现方式中,业务队列的数量可以为一个或多个,只要消息中的来源标识与任意一个业务队列的标识相匹配就确定该消息的来源是业务队列。
S225.若来源标识与缓冲队列的标识相匹配,则确定消息的来源为预设的缓冲队列。
在一种可能的实现方式中,缓冲队列的数量可以为一个或多个,只要消息中的来源标识与任意一个缓冲队列的标识相匹配就确定该消息的来源是缓冲队列。
在本实施例中,针对不同来源的消息执行不同的流程,当消息的来源是业务队列时,就执行S23。
S23.判断消息的延迟时间是否大于阈值。
在本实施例中,判断业务队列中消息的延迟时间是否大于阈值的目的是为了确定业务队列中是否发生了消息积压,其中阈值为根据具体需求设定的值。
在一种可能的实现方式中,延迟时间可以是从消息生产端创建该消息的时间到当前时间的时间差,具体的可以通过下述方式计算延迟时间:
S231.获取消息携带的生成时间,生成时间为消息被消息生产端创建的时间。
其中,生成时间指的是消息生产端创建出该消息的时间,消息中通常会携带有生成时间,通过对消息进行解析就可以得到消息中携带的生成时间,可以采用现有的解析技术对消息进行解析,本实施例中不对解析方法进行具体限定。
S232.计算当前时间和生成时间的差值,将差值作为消息的延迟时间。
在一种可能的实现方式中,可以在消息处理端中设置用于记录时间的时钟模块,通过时钟模块来获取当前时间。
将当前时间与消息中携带的生成时间做差,得到的差值即为延迟时间,例如当前时间为2018年9月23日12时25分30秒,生成时间为2018年9月23日00时25分20秒,则延迟时间就是12个小时。
S24.若消息的延迟时间大于阈值,将消息发送至预设的缓冲队列。
其中阈值为根据需求设定的值,当消息的延迟时间大于阈值时,说明该消息为积压消息,也就说明业务队列中发生了消息积压,为了防止消息处理端由于处理业务队列中积压消息导致新创建的消息的处理被延迟太多,当确定消息为积压消息后,先不对该消息进行处理,而是将该消息发送至预设的缓冲队列中,由于将消息发送至缓冲队列中所消耗的时间,远小于处理该消息所消耗的时间,所以,通过将积压消息转发至缓冲队列中,可以快速的将积压消息从消息服务器的业务队列中移出,保证了新消息的处理不会被延后太多。
S25.若消息的延迟时间不大于阈值,执行预设的消息处理业务对消息进行处理。
当消息的延迟时间不大于阈值时,说明此时该消息是比较新的消息,也就是消息生产端不久前才创建出来的消息,因为该消息刚创建不久,由于业务队列是先进先出的形式,所以在业务队列排在该消息之后的消息应该没有很多,也就说明业务队列中此时没有消息积压,所以此时按照预设的消息处理业务对该消息进行处理即可,不需要将该消息转发至缓冲队列中,其中预设的消息处理业务预先设置并存储在本地磁盘或可以通过接口调用的远程服务器中,在需要消息处理业务时直接从本地磁盘或通过接口从远程服务器中获取即可,预设的消息处理业务的内容根据具体需求设置,例如可以是对消息进行展示等等,此处不做具体限定。
在一种可能的实现方式中,若接收到的消息的来源缓冲队列发送,则对消息执行预设的消息处理业务。
在本实施例中,缓冲队列中接收的是消息处理端转发的来自业务队列的积压消息,所以缓冲队列中消息是否积压都不会多消息生产端创建的新消息造成影响,所以不需要判断缓冲队列中是否发生了消息积压,而由于缓冲队列中的消息已经是之前的积压消息了,所以为了尽快处理完这些消息,只要接收到来自缓冲队列的消息就直接执行预设的消息处理业务进行处理即可,其中预设的消息处理业务预先设置并存储在本地磁盘或可以通过接口调用的远程服务器中,在需要消息处理业务时直接从本地磁盘或通过接口从远程服务器中获取即可,预设的消息处理业务的内容根据具体需求设置,例如可以是对消息进行展示等等,此处不做具体限定。
本发明实施例提出的一种消息处理方法,接收待处理的消息,若消息的来源为消息服务端的业务队列,计算消息的延迟时间,并判断延迟时间是否大于阈值,若大于阈值,则说明该消息为业务队列中积压的消息,为了防止由于处理积压消息导致新消息被延迟处理,本方案在确定消息是业务队列中的积压消息时,先不对该消息执行消息处理业务,而是将其发送至预设的缓冲队列中,由于转发消息消耗的时间远远少于执行消息处理业务消耗的时间,所以本方案可以很快的将积压消息从业务队列中移除,避免了后续新放入业务队列中消息因为业务队列中的消息积压导致的延迟处理,而对延迟时间不大于阈值的消息执行预设的消息处理业务进行正常处理即可。
基于与上述消息处理方法相同的发明构思,本发明实施例还提供了一种消息处理装置,应用于消息处理端,如图3所示,该装置300可以包括:
接收模块301,用于接收待处理的消息;
计算模块302,用于若接收到的消息的来源为业务队列,计算消息的延迟时间;
判断模块303,用于判断消息的延迟时间是否大于阈值;
转发模块304,用于若消息的延迟时间大于阈值,将消息发送至预设的缓冲队列;
第一处理模块305,用于若消息的延迟时间不大于阈值,则对消息执行预设的消息处理业务。
在一种可能的实现方式中,装置还包括:
第二处理模块,用于若消息的来源为预设的缓冲队列,则对消息执行预设的消息处理业务。
在一种可能的实现方式中,装置还包括:
来源确定模块,用于在接收到待处理的消息之后,获取接收到的消息中携带的来源标识,获取预设的业务队列的标识和预设的缓冲队列的标识,将来源标识分别与业务队列的标识和缓冲队列的标识分别进行比对,若来源标识与业务队列的标识相匹配,则确定消息的来源为消息服务端的业务队列,若来源标识与缓冲队列的标识相匹配,则确定消息的来源为预设的缓冲队列。
在一种可能的实现方式中,计算模块302计算消息的延迟时间包括:
获取消息携带的生成时间,生成时间为消息被消息生产端创建的时间;
计算当前时间和生成时间的差值,将差值作为消息的延迟时间。
在本申请另一实施例中,还提供了一种电子设备,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信;
存储器403,用于存放计算机程序;
处理器401,用于执行存储器403上所存放的程序时,实现如下步骤:
接收待处理的消息;
若接收到的消息的来源为消息服务端的业务队列,计算消息的延迟时间;
判断消息的延迟时间是否大于阈值;
若消息的延迟时间大于阈值,将消息发送至预设的缓冲队列;
若消息的延迟时间不大于阈值,则对消息执行预设的消息处理业务。
上述电子设备提到的通信总线404可以是外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线404可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口402用于上述计算机设备与其他设备之间的通信。
存储器403可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器401可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请另一实施例中,还提供了一种计算机可读存储介质,计算机可读存储介质上存储有数据处理方法程序,数据处理方法程序被处理器执行如下的步骤:
接收待处理的消息;
若接收到的消息的来源为消息服务端的业务队列,计算消息的延迟时间;
判断消息的延迟时间是否大于阈值;
若消息的延迟时间大于阈值,将消息发送至预设的缓冲队列;
若消息的延迟时间不大于阈值,则对消息执行预设的消息处理业务。
本发明实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文功能的单元来实现本文的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种消息处理方法,其特征在于,应用于消息处理端,所述方法包括:
接收待处理的消息;
若接收到的消息的来源为消息服务端的业务队列,计算所述消息的延迟时间;
判断所述消息的延迟时间是否大于阈值;
若所述消息的延迟时间大于所述阈值,将所述消息发送至预设的缓冲队列;
若所述消息的延迟时间不大于所述阈值,则对所述消息执行预设的消息处理业务。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述消息的来源为预设的缓冲队列,则对所述消息执行预设的消息处理业务。
3.根据权利要求1所述的方法,其特征在于,接收待处理的消息之后,所述方法还包括:
获取接收到的消息中携带的来源标识;
获取预设的消息服务端的业务队列的标识和预设的缓冲队列的标识;
将所述来源标识分别与所述业务队列的标识和所述缓冲队列的标识进行比对;
若所述来源标识与所述业务队列的标识相匹配,则确定所述消息的来源为消息服务端的业务队列;
若所述来源标识与所述缓冲队列的标识相匹配,则确定所述消息的来源为预设的缓冲队列。
4.根据权利要求1所述的方法,其特征在于,计算所述消息的延迟时间包括:
获取所述消息携带的生成时间,所述生成时间为所述消息被消息生产端创建的时间;
计算当前时间和所述生成时间的差值,将所述差值作为所述消息的延迟时间。
5.一种消息处理装置,其特征在于,应用于消息处理端,所述装置包括:
接收模块,用于接收待处理的消息;
计算模块,用于若接收到的消息的来源为消息服务端的业务队列,计算所述消息的延迟时间;
判断模块,用于判断所述消息的延迟时间是否大于阈值;
转发模块,用于若所述消息的延迟时间大于所述阈值,将所述消息发送至预设的缓冲队列;
第一处理模块,用于若所述消息的延迟时间不大于所述阈值,则对所述消息执行预设的消息处理业务。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二处理模块,用于若所述消息的来源为预设的缓冲队列,则对所述消息执行预设的消息处理业务。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
来源确定模块,用于在接收到待处理的消息之后,获取接收到的消息中携带的来源标识,获取预设的消息服务端的业务队列的标识和预设的缓冲队列的标识,将所述来源标识分别与所述业务队列的标识和所述缓冲队列的标识分别进行比对,若所述来源标识与所述业务队列的标识相匹配,则确定所述消息的来源为消息服务端的业务队列,若所述来源标识与所述缓冲队列的标识相匹配,则确定所述消息的来源为预设的缓冲队列。
8.根据权利要求5所述的装置,其特征在于,所述计算模块计算所述消息的延迟时间包括:
获取所述消息携带的生成时间,所述生成时间为所述消息被消息生产端创建的时间;
计算当前时间和所述生成时间的差值,将所述差值作为所述消息的延迟时间。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的数据处理程序,以实现权利要求1-4任一所述的消息处理方法。
10.一种可读存储介质,其特征在于,所述可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1-4任一所述的消息处理方法。
CN201911048198.XA 2019-10-30 2019-10-30 一种消息处理方法、装置、电子设备及可读存储介质 Pending CN110995618A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911048198.XA CN110995618A (zh) 2019-10-30 2019-10-30 一种消息处理方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911048198.XA CN110995618A (zh) 2019-10-30 2019-10-30 一种消息处理方法、装置、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN110995618A true CN110995618A (zh) 2020-04-10

Family

ID=70082733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911048198.XA Pending CN110995618A (zh) 2019-10-30 2019-10-30 一种消息处理方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110995618A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463314A (zh) * 2020-11-06 2021-03-09 贝壳技术有限公司 异步队列的处理方法、装置、电子设备及存储介质
CN113037450A (zh) * 2021-03-17 2021-06-25 杭州遥望网络科技有限公司 一种延迟消息处理方法、装置、设备及可读存储介质
CN113595814A (zh) * 2021-07-06 2021-11-02 深圳Tcl新技术有限公司 消息延迟检测方法、装置、电子设备及存储介质
CN114104880A (zh) * 2021-11-15 2022-03-01 云知声(上海)智能科技有限公司 电梯呼叫控制系统及其控制方法
CN115174346A (zh) * 2022-09-02 2022-10-11 平安银行股份有限公司 基于消息队列的延时告警方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105610728A (zh) * 2015-12-28 2016-05-25 湖南蚁坊软件有限公司 一种基于时间窗口的网络爬虫流量控制自动降级方法
US20170286156A1 (en) * 2016-03-30 2017-10-05 Amazon Technologies, Inc. Generating data streams from pre-existing data sets
CN110113721A (zh) * 2019-03-27 2019-08-09 深圳市买买提信息科技有限公司 一种消息管理方法及装置
CN110333956A (zh) * 2019-05-23 2019-10-15 平安普惠企业管理有限公司 消息队列中消息存储方法、装置、介质及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105610728A (zh) * 2015-12-28 2016-05-25 湖南蚁坊软件有限公司 一种基于时间窗口的网络爬虫流量控制自动降级方法
US20170286156A1 (en) * 2016-03-30 2017-10-05 Amazon Technologies, Inc. Generating data streams from pre-existing data sets
CN110113721A (zh) * 2019-03-27 2019-08-09 深圳市买买提信息科技有限公司 一种消息管理方法及装置
CN110333956A (zh) * 2019-05-23 2019-10-15 平安普惠企业管理有限公司 消息队列中消息存储方法、装置、介质及电子设备

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463314A (zh) * 2020-11-06 2021-03-09 贝壳技术有限公司 异步队列的处理方法、装置、电子设备及存储介质
CN113037450A (zh) * 2021-03-17 2021-06-25 杭州遥望网络科技有限公司 一种延迟消息处理方法、装置、设备及可读存储介质
CN113595814A (zh) * 2021-07-06 2021-11-02 深圳Tcl新技术有限公司 消息延迟检测方法、装置、电子设备及存储介质
CN114104880A (zh) * 2021-11-15 2022-03-01 云知声(上海)智能科技有限公司 电梯呼叫控制系统及其控制方法
CN114104880B (zh) * 2021-11-15 2024-03-08 云知声(上海)智能科技有限公司 电梯呼叫控制系统及其控制方法
CN115174346A (zh) * 2022-09-02 2022-10-11 平安银行股份有限公司 基于消息队列的延时告警方法
CN115174346B (zh) * 2022-09-02 2023-03-28 平安银行股份有限公司 基于消息队列的延时告警方法

Similar Documents

Publication Publication Date Title
CN110995618A (zh) 一种消息处理方法、装置、电子设备及可读存储介质
US11055169B2 (en) Forecasting workload transaction response time
CN108572898B (zh) 一种控制接口的方法、装置、设备、以及存储介质
US9954939B2 (en) Processing a message received by a message server
CN109240836B (zh) 一种用于配置消息队列的消息的方法和装置
CN110971485B (zh) 业务指标的监控系统及方法
JP2019176473A5 (zh)
CN111008087B (zh) 一种消息处理方法及装置
CN109597800B (zh) 一种日志分发方法及装置
US20170346778A1 (en) Dynamic granular messaging persistence
CN111694677A (zh) 消息队列的管理方法、装置、终端和计算机可读存储介质
CN112732560B (zh) 文件描述符泄露风险的检测方法及装置
CN113590017B (zh) 用于处理数据的方法、电子设备和计算机程序产品
CN110888739B (zh) 延迟任务的分布式处理方法与装置
CN112948081A (zh) 延时处理任务的方法、装置、设备以及存储介质
CN110795239A (zh) 应用内存泄露的检测方法及装置
CN115629903A (zh) 任务延迟监控方法、装置、设备及存储介质
CN111950232B (zh) 一种自动切换号段的方法和装置
US9843550B2 (en) Processing messages in a data messaging system using constructed resource models
CN108966160B (zh) 一种短信处理方法、装置及计算机可读存储介质
CN112929923B (zh) 上行资源获取方法、装置、移动终端及可读存储介质
US20150163113A1 (en) Communication control apparatus
CN109254768B (zh) 制证信息的获取方法、终端设备及介质
CN110633165A (zh) 故障处理方法、装置、系统服务器及计算机可读存储介质
CN117254882A (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

Application publication date: 20200410

RJ01 Rejection of invention patent application after publication