无线通信网络上信息队列管理方法、系统、产品及介质与流程

    专利查询2025-03-03  8


    本技术涉及无线通信网络领域,尤其涉及无线通信网络上信息队列管理方法、系统、产品及介质。


    背景技术:

    1、随着互联网技术的快速发展和业务需求的不断增长,消息队列系统在现代分布式架构中扮演着越来越重要的角色。其中,延迟消息处理成为了许多应用场景的关键需求,如定时任务、延迟通知、订单超时处理等。这些场景要求消息队列系统能够高效、可靠地处理大量的延迟消息,同时保证消息的准确性和及时性。

    2、目前,相关技术中的消息队列系统(如rocketmq)在处理延迟消息时,通常采用定时任务调度的方式。具体实现上,系统会维护一个或多个定时器,周期性地扫描待处理的延迟消息。当发现消息的预定执行时间已到,系统会将这些消息从延迟队列中取出,并放入常规的消息队列中进行处理。为了支持不同的延迟时间,系统可能会设置多个延迟级别,每个级别对应一个固定的延迟时间,消息根据其延迟时间被分配到相应的级别中。

    3、然而,随着业务规模的扩大和延迟消息数量的激增,相关技术中基于定时扫描的方法可能导致系统资源的过度消耗,特别是在大多数消息尚未到期的情况下,导致效率较低。


    技术实现思路

    1、本技术提供了一种无线通信网络上信息队列管理方法、系统、产品及介质,用于提高处理效率。

    2、第一方面,本技术提供了一种无线通信网络上信息队列管理方法,包括:将无线通信网络中的异步消息作为延时任务,根据各延时任务的处理时间将其分配到时间轮盘的相应时间槽中;时间轮盘包括多个时间槽,时间槽用于存储对应的时间与处理时间的差值小于预设第一时间阈值的延时任务;将延时任务同步存储至存储设备中;随当前时间转动时间轮盘,并检查当前时间对应的时间轮盘中的延时任务是否到期;若延时任务到期,则执行第一策略,并将执行结果更新至存储设备中;周期性地检查时间轮盘和存储设备中的未处理任务,未处理任务为当前时间与处理时间的差值大于预设第二时间阈值的延时任务; 执行第二策略,并将执行结果更新至时间轮盘和存储设备中。

    3、通过采用上述技术方案,将异步消息作为延时任务并分配到时间轮盘的相应时间槽中,允许根据消息的处理时间进行精确定位,避免了频繁的全量扫描,提高了处理效率。其次,将任务同步存储至存储设备,确保了消息的持久化,提高了在重启或故障时的恢复能力。通过周期性检查未处理任务并执行相应策略,能够及时处理超时消息,防止了任务堆积和处理延迟。

    4、结合第一方面的一些实施例,在一些实施例中,将无线通信网络中的异步消息作为延时任务,根据各延时任务的处理时间将其分配到时间轮盘的相应时间槽中的步骤,具体包括:基于无线通信网络中异步消息的数量和处理时间分布,确定时间轮盘的层级数和每层的时间粒度,其中时间轮盘的高层的时间粒度大于时间轮盘的低层的时间粒度,且时间轮盘的高层的时间槽在时间跨度上对应多个时间轮盘的低层的时间槽;将异步消息作为延时任务,根据各延时任务的处理时间将其分配到时间轮盘的时间轮盘的最高层的相应时间槽中;将时间轮盘中的延时任务从最高层的时间槽依次下沉至最低层的时间槽中。

    5、通过采用上述技术方案,多层级时间轮盘的设计允许根据实际需求动态调整层级数和时间粒度,适应不同规模和类型的任务分布。高层时间轮盘负责粗粒度的时间管理,而低层时间轮盘则处理精细的时间调度。将任务从高层依次下沉到低层的过程,实现了任务的逐步细化和精确定位,提高了对大量任务的处理能力,减少了响应延迟,解决了高并发环境下的性能瓶颈问题,能够更加灵活和高效地处理大规模、高并发环境下的延时任务。

    6、结合第一方面的一些实施例,在一些实施例中,将时间轮盘中的延时任务从最高层的时间槽依次下沉至最低层的时间槽中的步骤,具体包括:遍历最高层的时间槽中的延时任务;确定每个延时任务在最高层的下层的目标时间槽;校验目标时间槽是否存在,若不存在则创建目标时间槽;将延时任务移动至目标时间槽中。

    7、通过采用上述技术方案,系通过遍历最高层的时间槽并将任务下沉到下层,这个过程中,动态创建所需的时间槽,确保只有必要的时间槽被创建和维护。这种按需创建的方法减少了空闲时间槽的数量,从而大幅降低了在扫描过程中的资源消耗。

    8、结合第一方面的一些实施例,在一些实施例中,将时间轮盘中的延时任务从最高层的时间槽依次下沉至最低层的时间槽中的步骤之后,方法还包括:为时间轮盘的每层创建索引,其中索引的每个节点对应一个时间槽;索引的每个节点中包括对应时间槽的延时任务指针、以及不同层的前向指针。

    9、通过采用上述技术方案,为每层时间轮盘创建索引,并在每个索引节点中包含延时任务指针和不同层的前向指针,构建了一个高效的多层级导航结构。这种索引结构使得可以快速定位到特定的时间槽,而无需遍历整个时间轮盘。当需要访问某个具体时间槽时,可以利用这些索引,从高层开始,通过前向指针逐层定位,直到找到目标时间槽,能够在复杂的多层级时间轮盘结构中实现快速、高效的任务定位。特别是在处理大量任务的场景下,减少了任务定位的时间复杂度,提高了任务调度的效率。

    10、结合第一方面的一些实施例,在一些实施例中,若延时任务到期,则执行第一策略,并将执行结果更新至存储设备中步骤,具体包括:若延时任务到期,则执行第一策略,并判断执行结果是否需要分配到时间轮盘中;若不需要分配到时间轮盘中,则将执行结果的更新任务加入异步更新队列;若需要分配到时间轮盘中,将执行结果作为延时任务,根据各延时任务的处理时间将其分配到时间轮盘的相应时间槽中;判断相应时间槽的对应的时间与当前时间的差值是否大于预计完成时间,预计完成时间由异步更新队列中更新任务的数量和平均处理时间决定;若不大于,则执行结果的更新任务加入异步更新队列;若大于,则将执行结果同步更新至存储设备中。

    11、通过采用上述技术方案,会判断执行结果是否需要重新分配到时间轮盘中。对于不需要重新分配的结果,将其加入异步更新队列,减少了资源的消耗。对于需要重新分配的结果,会进一步评估当前负载,通过比较相应时间槽的时间与预计完成时间,决定是否进行同步更新。这种基于负载的动态决策机制,平衡了实时性和负载,提高了的整体处理效率和适应性。

    12、结合第一方面的一些实施例,在一些实施例中,执行第二策略,并将执行结果更新至时间轮盘和存储设备中步骤,具体包括:执行第二策略,并判断执行结果是否需要分配到时间轮盘中;若不需要分配到时间轮盘中,则将执行结果的更新任务加入异步更新队列;若需要分配到时间轮盘中,则将执行结果同步更新至存储设备中。

    13、通过采用上述技术方案,对执行第二策略的结果进行判断,决定是否需要重新分配到时间轮盘中。这种动态判断机制使得能够根据任务的实际执行情况做出灵活调整。对于不需要重新分配的结果,将其加入异步更新队列,减少了资源的消耗。对于需要重新分配的结果,会立即进行同步更新,使未处理任务快速推进,避免影响下一环节。

    14、通过采用上述技术方案,判断延时任务的数量,只有在任务数量不少于2个时才启动优先级处理机制,综合考虑了任务的等待时间和历史处理时间,这两个因素能够反映任务的紧急程度和复杂度。基于这些信息,计算出每个任务的优先级,根据计算出的优先级依次处理任务,确保了最关键和最紧急的任务能够得到及时处理。

    15、第二方面,本技术提供了一种无线通信网络上信息队列管理系统,该无线通信网络上信息队列管理系统包括:一个或多个处理器和存储器;该存储器与该一个或多个处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,该一个或多个处理器调用该计算机指令以使得该无线通信网络上信息队列管理系统执行如第一方面以及第一方面中任一可能的实现方式描述的方法。

    16、第三方面,本技术提供了一种包含指令的计算机程序产品,当该计算机程序产品在无线通信网络上信息队列管理系统上运行时,使得该无线通信网络上信息队列管理系统执行如第一方面以及第一方面中任一可能的实现方式描述的方法。

    17、第四方面,本技术提供了一种计算机可读存储介质,包括指令,当该指令在无线通信网络上信息队列管理系统上运行时,使得该无线通信网络上信息队列管理系统执行如第一方面以及第一方面中任一可能的实现方式描述的方法。

    18、本技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:

    19、1、将异步消息作为延时任务并分配到时间轮盘的相应时间槽中,允许根据消息的处理时间进行精确定位,避免了频繁的全量扫描,提高了处理效率。其次,将任务同步存储至存储设备,确保了消息的持久化,提高了在重启或故障时的恢复能力。通过周期性检查未处理任务并执行相应策略,能够及时处理超时消息,防止了任务堆积和处理延迟。

    20、2、多层级时间轮盘的设计允许根据实际需求动态调整层级数和时间粒度,适应不同规模和类型的任务分布。高层时间轮盘负责粗粒度的时间管理,而低层时间轮盘则处理精细的时间调度。将任务从高层依次下沉到低层的过程,实现了任务的逐步细化和精确定位,提高了对大量任务的处理能力,减少了响应延迟,解决了高并发环境下的性能瓶颈问题,能够更加灵活和高效地处理大规模、高并发环境下的延时任务。


    技术特征:

    1.一种无线通信网络上信息队列管理方法,其特征在于,包括:

    2.根据权利要求1所述的方法,其特征在于,所述将无线通信网络中的异步消息作为所述延时任务,根据各所述延时任务的处理时间将其分配到所述时间轮盘的相应时间槽中的步骤,具体包括:

    3.根据权利要求2所述的方法,其特征在于,所述将所述时间轮盘中的延时任务从最高层的时间槽依次下沉至最低层的时间槽中的步骤,具体包括:

    4.根据权利要求2所述的方法,其特征在于,所述将所述时间轮盘中的延时任务从最高层的时间槽依次下沉至最低层的时间槽中的步骤之后,所述方法还包括:

    5.根据权利要求1所述的方法,其特征在于,所述若所述延时任务到期,则执行第一策略,并将执行结果更新至所述存储设备中步骤,具体包括:

    6.根据权利要求1所述的方法,其特征在于,所述执行第二策略,并将执行结果更新至所述时间轮盘和所述存储设备中步骤,具体包括:

    7.根据权利要求1所述的方法,其特征在于,所述第二策略包括:

    8.一种无线通信网络上信息队列管理系统,其特征在于,所述无线通信网络上信息队列管理系统包括:一个或多个处理器和存储器;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述无线通信网络上信息队列管理系统执行如权利要求1-7中任一项所述的方法。

    9.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在无线通信网络上信息队列管理系统上运行时,使得所述无线通信网络上信息队列管理系统执行如权利要求1-7中任一项所述的方法。

    10.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在无线通信网络上信息队列管理系统上运行时,使得所述无线通信网络上信息队列管理系统执行如权利要求1-7中任一项所述的方法。


    技术总结
    本申请提供了无线通信网络上信息队列管理方法、系统、产品及介质,涉及无线通信网络领域。将异步消息作为延时任务并分配到时间轮盘的相应时间槽中,允许根据消息的处理时间进行精确定位,避免了频繁的全量扫描,提高了处理效率。其次,将任务同步存储至存储设备,确保了消息的持久化,提高了在重启或故障时的恢复能力。通过周期性检查未处理任务并执行相应策略,能够及时处理超时消息,防止了任务堆积和处理延迟。

    技术研发人员:邓一波
    受保护的技术使用者:南京万米信息技术有限公司
    技术研发日:
    技术公布日:2024/11/26
    转载请注明原文地址:https://tc.8miu.com/read-26258.html

    最新回复(0)