一种短信队列下发速率动态调整方法及系统与流程
未命名
09-08
阅读:109
评论:0

1.本发明涉及无线通信技术领域,具体而言,涉及一种短信队列下发速率动态调整方法及系统。
背景技术:
2.基于无线网络的手机短信业务,以高效、即时、准确、低廉及无所不在等优势,已经成为移动业务中重要的组成部分。短信发送业务,为保证验证码和一些紧急短信的及时性,设置了不同的优先级队列,用于存放不同类型的短信,并根据后端能力分配了相应的下发速率。但有时营销短信量比较大,短信会出现拥堵,而验证码短信量少,下发速率有富余,造成通道能力浪费。
3.目前短信下发速率控制多以后端控制为主,通过后端成功率或后端回执错误信息进行判断,短信下发速率是否超限,若超限则降低下发速率,但这种方式会导致一部分短信下发失败,需要重发浪费流量。
技术实现要素:
4.为了克服上述问题或者至少部分地解决上述问题,本发明提供一种短信队列下发速率动态调整方法及系统,采用埋点技术,实时监控短信队列拥堵情况;动态调整下发速率,保证短信下发的实时性和提高短信通道的最大使用率。
5.为解决上述技术问题,本发明采用的技术方案为:
6.第一方面,本发明提供一种短信队列下发速率动态调整方法,包括以下步骤:
7.在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;
8.通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;
9.根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。
10.本方法采用埋点技术,实时监控短信队列拥堵情况;动态调整下发速率,保证短信下发的实时性和提高短信通道的最大使用率。通过前端短信量分配控制下发速率,不需要改变后端短信网关通道;动态调控逻辑判断全在前端处理,不受后端通道和网络等因素的影响,操作实施响应速度快,而且不受外在因素干扰,数据无误差。本发明可有效解决短信拥堵问题,提高短信后端通道能力使用率。在后端通道能力有限的情况下,动态调整前端优先级队列的出口速率,在保证不冲击后端通道接口能力的情况下,使后端通道能力的使用率达到最大化。
11.基于第一方面,进一步地,上述通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率的方法包括以下步骤:
12.统计并根据定时器间隔时间内总延迟时间和间隔时间内短信下发数计算得到间隔时间内该短信队列的延迟时间;
13.统计并根据定时器间隔时间内各个短信队列的短信下发数和各个短信队列下发
速率计算各个短信队列的使用率。
14.基于第一方面,进一步地,上述根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率的方法包括以下步骤:
15.s31、判断各个短信队列的延迟时间是否超过预设的延迟阈值,若超过,则进入步骤s32;若未超过,则进入步骤s34;
16.s32、获取最低使用率队列,查看最低使用率队列是否有已被调整过速率的标识,若没有,则进入步骤s33;若有,则结束流程;
17.s33、判断最低使用率队列的延迟时间是否超过预设的延迟阈值,若未超过,则将对应的短信队列的下发速率调整为预设的最大下发速率,将最低使用率队列的下发速率调整为预设的最小下发速率,并设置当前两个队列的调率标识为相同值;若超过,则结束流程;
18.s34、查看当前短信队列是否有已被调整过速率的标识,若有,则进入步骤s35;若没有,则结束流程;
19.s35、判断具有相同调率标识的队列延迟时间是否小于等于预设的延迟阀值,若是,则删除两个具有相同调率标识的队列的调速标识并恢复两个队列的下发速率为预设的默认值;若否,则结束流程。
20.基于第一方面,进一步地,上述最低使用率队列的确定方法包括以下步骤:
21.将各个短信队列的使用率进行比对,确定最低使用率队列。
22.第二方面,本发明提供一种短信队列下发速率动态调整系统,包括埋点模块、计算模块以及调整模块,其中:
23.埋点模块,用于在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;
24.计算模块,用于通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;
25.调整模块,用于根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。
26.本系统通过埋点模块、计算模块以及调整模块等多个模块的配合,采用埋点技术,实时监控短信队列拥堵情况;动态调整下发速率,保证短信下发的实时性和提高短信通道的最大使用率。通过前端短信量分配控制下发速率,不需要改变后端短信网关通道;动态调控逻辑判断全在前端处理,不受后端通道和网络等因素的影响,操作实施响应速度快,而且不受外在因素干扰,数据无误差。本发明可有效解决短信拥堵问题,提高短信后端通道能力使用率。在后端通道能力有限的情况下,动态调整前端优先级队列的出口速率,在保证不冲击后端通道接口能力的情况下,使后端通道能力的使用率达到最大化。
27.第三方面,本技术提供一种电子设备,其包括存储器,用于存储一个或多个程序;处理器;当一个或多个程序被处理器执行时,实现如上述第一方面中任一项的方法。
28.第四方面,本技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面中任一项的方法。
29.本发明至少具有如下优点或有益效果:
30.本发明提供一种短信队列下发速率动态调整方法及系统,采用埋点技术,实时监
控短信队列拥堵情况;动态调整下发速率,保证短信下发的实时性和提高短信通道的最大使用率。本发明可有效解决短信拥堵问题,提高短信后端通道能力使用率。在后端通道能力有限的情况下,动态调整前端优先级队列的出口速率,在保证不冲击后端通道接口能力的情况下,使后端通道能力的使用率达到最大化。
附图说明
31.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
32.图1为本发明实施例一种短信队列下发速率动态调整方法的流程图;
33.图2为本发明实施例一种短信队列下发速率动态调整方法中动态调整的详细流程图;
34.图3为本发明实施例一种短信队列下发速率动态调整系统的原理框图;
35.图4为本发明实施例提供的一种电子设备的结构框图。
36.附图标记说明:100、埋点模块;200、计算模块;300、调整模块;101、存储器;102、处理器;103、通信接口。
具体实施方式
37.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
38.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
40.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
41.在本发明实施例的描述中,“多个”代表至少2个。
42.实施例:
43.如图1-图2所示,第一方面,本发明实施例提供一种短信队列下发速率动态调整方
法,包括以下步骤:
44.s1、在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;在接收到短信请求后,将短信消息同步存入队列中,并进行入队列时间埋点,再异步出队列,进行埋点并计算延迟时间,取出后直接下发短信,不做其他处理,此法保证了短信主流程不受任何影响。
45.s2、通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;
46.进一步地,包括:统计并根据定时器间隔时间内总延迟时间和间隔时间内短信下发数计算得到间隔时间内该短信队列的延迟时间;统计并根据定时器间隔时间内各个短信队列的短信下发数和各个短信队列下发速率计算各个短信队列的使用率。
47.在本发明的一些实施例中,根据埋点数据计算各队列延迟时间:统计定时器间隔时间内总延迟时间,除以短信下发数,得到间隔时间内该队列的延迟时间。根据埋点数据计算各队列使用率:间隔时间内短信下发数,除以队列下发速率,得到各个队列的使用率。
48.s3、根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。预先设置好各优先级队列延迟阀值(limit),及动态下发速率阈值(min-max),和下发默认值(default)。
49.进一步地,如图2所示,包括:
50.s31、判断各个短信队列的延迟时间是否超过预设的延迟阈值,若超过,则进入步骤s32;若未超过,则进入步骤s34;
51.s32、获取最低使用率队列,查看最低使用率队列是否有已被调整过速率的标识,若没有,则进入步骤s33;若有,则结束流程;上述最低使用率队列的确定方法包括以下步骤:将各个短信队列的使用率进行比对,确定最低使用率队列。
52.s33、判断最低使用率队列的延迟时间是否超过预设的延迟阈值,若未超过,则将对应的短信队列的下发速率调整为预设的最大下发速率,将最低使用率队列的下发速率调整为预设的最小下发速率,并设置当前两个队列的调率标识为相同值;若超过,则结束流程;
53.s34、查看当前短信队列是否有已被调整过速率的标识,若有,则进入步骤s35;若没有,则结束流程;
54.s35、判断具有相同调率标识的队列延迟时间是否小于等于预设的延迟阀值,若是,则删除两个具有相同调率标识的队列的调速标识并恢复两个队列的下发速率为预设的默认值;若否,则结束流程。
55.在本发明的一些实施例中,定时器定时计算各队列的延迟时间以及各队列的使用率,若超过延迟阀值,则查看使用率最低队列是否有已被调整过速率的标识,若没有,查看使用率最低的队列是否超过延迟阀值,没有超过,则提升延迟队列的下发速率为max,降低使用率最低队列的下发速率为min,同时设置当前两个队列的调整速率标识为相同值;若使用率最低队列已被设置了调整标识或者已超过延迟阀值,则表明系统已满负荷运行,不具备动态调整速率的条件,结束流程;当队列延迟时间小于等于延迟阀值时,查看当前队列是否被设置调整速率标识,如无则表明当前系统资源充足无需调整,结束流程;若有则查看相同调速标识的队列延迟时间是否小于等于延迟阀值,否,则说明当前调速仍在生效不做任何处理结束任务,是,则删除两个调整速率标识相同队列的调速标识并恢复两个队列的下
发速率为默认值;保证队列下发速率的实时切换。
56.本方法采用埋点技术,实时监控短信队列拥堵情况;动态调整下发速率,保证短信下发的实时性和提高短信通道的最大使用率。通过前端短信量分配控制下发速率,不需要改变后端短信网关通道;动态调控逻辑判断全在前端处理,不受后端通道和网络等因素的影响,操作实施响应速度快,而且不受外在因素干扰,数据无误差。本发明可有效解决短信拥堵问题,提高短信后端通道能力使用率。在后端通道能力有限的情况下,动态调整前端优先级队列的出口速率,在保证不冲击后端通道接口能力的情况下,使后端通道能力的使用率达到最大化。
57.本发明是在对后端能力进行评估后,为各优先级合理分配下发流量,并通过埋点进行实时监控,若队列出现拥堵,则动态调整优先级队列的下发速率,不会造成短信出口流量爆满,也可使短信通道能力使用率达到最大化。
58.如图3所示,第二方面,本发明实施例提供一种短信队列下发速率动态调整系统,包括埋点模块100、计算模块200以及调整模块300,其中:
59.埋点模块100,用于在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;
60.计算模块200,用于通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;
61.调整模块300,用于根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。
62.本系统通过埋点模块100、计算模块200以及调整模块300等多个模块的配合,采用埋点技术,实时监控短信队列拥堵情况;动态调整下发速率,保证短信下发的实时性和提高短信通道的最大使用率。通过前端短信量分配控制下发速率,不需要改变后端短信网关通道;动态调控逻辑判断全在前端处理,不受后端通道和网络等因素的影响,操作实施响应速度快,而且不受外在因素干扰,数据无误差。本发明可有效解决短信拥堵问题,提高短信后端通道能力使用率。在后端通道能力有限的情况下,动态调整前端优先级队列的出口速率,在保证不冲击后端通道接口能力的情况下,使后端通道能力的使用率达到最大化。
63.如图4所示,第三方面,本技术实施例提供一种电子设备,其包括存储器101,用于存储一个或多个程序;处理器102。当一个或多个程序被处理器102执行时,实现如上述第一方面中任一项的方法。
64.还包括通信接口103,该存储器101、处理器102和通信接口103相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器101可用于存储软件程序及模块,处理器102通过执行存储在存储器101内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口103可用于与其他节点设备进行信令或数据的通信。
65.其中,存储器101可以是但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
66.处理器102可以是一种集成电路芯片,具有信号处理能力。该处理器102可以是通
用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
67.在本技术所提供的实施例中,应该理解到,所揭露的方法及系统,也可以通过其它的方式实现。以上所描述的方法及系统实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的方法及系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
68.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
69.第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器102执行时实现如上述第一方面中任一项的方法。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
70.以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
71.对于本领域技术人员而言,显然本技术不限于上述示范性实施例的细节,而且在不背离本技术的精神或基本特征的情况下,能够以其它的具体形式实现本技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本技术内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
技术特征:
1.一种短信队列下发速率动态调整方法,其特征在于,包括以下步骤:在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。2.根据权利要求1所述的一种短信队列下发速率动态调整方法,其特征在于,所述通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率的方法包括以下步骤:统计并根据定时器间隔时间内总延迟时间和间隔时间内短信下发数计算得到间隔时间内该短信队列的延迟时间;统计并根据定时器间隔时间内各个短信队列的短信下发数和各个短信队列下发速率计算各个短信队列的使用率。3.根据权利要求1所述的一种短信队列下发速率动态调整方法,其特征在于,所述根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率的方法包括以下步骤:s31、判断各个短信队列的延迟时间是否超过预设的延迟阈值,若超过,则进入步骤s32;若未超过,则进入步骤s34;s32、获取最低使用率队列,查看最低使用率队列是否有已被调整过速率的标识,若没有,则进入步骤s33;若有,则结束流程;s33、判断最低使用率队列的延迟时间是否超过预设的延迟阈值,若未超过,则将对应的短信队列的下发速率调整为预设的最大下发速率,将最低使用率队列的下发速率调整为预设的最小下发速率,并设置当前两个队列的调率标识为相同值;若超过,则结束流程;s34、查看当前短信队列是否有已被调整过速率的标识,若有,则进入步骤s35;若没有,则结束流程;s35、判断具有相同调率标识的队列延迟时间是否小于等于预设的延迟阀值,若是,则删除两个具有相同调率标识的队列的调速标识并恢复两个队列的下发速率为预设的默认值;若否,则结束流程。4.根据权利要求3所述的一种短信队列下发速率动态调整方法,其特征在于,所述最低使用率队列的确定方法包括以下步骤:将各个短信队列的使用率进行比对,确定最低使用率队列。5.一种短信队列下发速率动态调整系统,其特征在于,包括埋点模块、计算模块以及调整模块,其中:埋点模块,用于在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;计算模块,用于通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;调整模块,用于根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。6.一种电子设备,其特征在于,包括:存储器,用于存储一个或多个程序;处理器;当所述一个或多个程序被所述处理器执行时,实现如权利要求1-4中任一项所述的方
法。7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-4中任一项所述的方法。
技术总结
本发明公开了一种短信队列下发速率动态调整方法及系统,涉及无线通信技术领域。该方法包括:在短信同步入队列和异步出队列时分别进行埋点,并进行短信下发;通过定时器根据埋点数据计算各个短信队列的延迟时间和使用率;根据各个短信队列的延迟时间、使用率以及预设的延迟阈值,动态调整对应短信队列的下发速率。本发明可解决短信拥堵问题,提高短信后端通道能力使用率。通道能力使用率。通道能力使用率。
技术研发人员:尹诗朋
受保护的技术使用者:天翼电子商务有限公司
技术研发日:2023.05.27
技术公布日:2023/9/5
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/