CN114501351A - 流量控制方法、设备及存储介质 - Google Patents
流量控制方法、设备及存储介质 Download PDFInfo
- Publication number
- CN114501351A CN114501351A CN202210108247.XA CN202210108247A CN114501351A CN 114501351 A CN114501351 A CN 114501351A CN 202210108247 A CN202210108247 A CN 202210108247A CN 114501351 A CN114501351 A CN 114501351A
- Authority
- CN
- China
- Prior art keywords
- backlog
- short message
- queue
- risk level
- message
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 238000009826 distribution Methods 0.000 claims abstract description 37
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 5
- 230000008713 feedback mechanism Effects 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 9
- 230000001276 controlling effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013480 data collection Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
- H04W4/14—Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/61—Time-dependent
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/67—Risk-dependent, e.g. selecting a security level depending on risk profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供一种流量控制方法、设备及存储介质。在流量控制方法中,调度节点可按照设定的短消息接收速率,接收消息系统发送的短消息,并通过目标资源对象将该短消息发送至目标用户。同时,调度节点可获取目标资源对象针对该短消息反馈的积压风险等级,并根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率。在这种实施方式中,基于资源对象的反馈机制,调度节点可根据资源对象的积压风险,对短消息接收速率进行调整,实现了短消息下放流量的自动控制,有利于降低人力资源成本。同时,可降低人为因素产生的调速滞后影响,时效性和准确性更高。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种流量控制方法、设备及存储介质。
背景技术
短信是直接触达用户的一种常见且有效的手段,被广泛应用于多种信息推送场景。目前,存在一种智能的短信服务平台,可用于接收上游客户发送的短信,并将短信通过下游运营商下发给目标用户。在一些场景中,当短信推送需求量较大(例如购物节集中推送短信验证码)时,客户(例如商家、金融机构等)向短信服务平台发送短信产生的流量,远大于短信服务平台的下游运营商所能承接的流量。在这种场景下,需要对短信平台的短信下发速度进行调整,以避免对下游运营商的资源造成较大负荷。
现有技术中,在短信服务平台侧通常依赖于人工估算下游运营商的承接能力,并基于该承接能力由人工手动完成短信下放速度的调整。这种人工调速方式准确率较差,且人力成本较高。因此,有待提出一种新的解决方案。
发明内容
本申请的多个方面提供一种流量控制方法、设备及存储介质,用以根据实现短消息下放流量的自动控制,降低人力资源成本。
本申请实施例还提供一种流量控制方法,包括:按照设定的短消息接收速率,接收消息系统发送的短消息;将所述短消息分配给目标资源对象,以通过所述目标资源对象将所述短消息发送至目标用户;获取所述目标资源对象针对所述短消息反馈的积压风险等级;根据所述目标资源对象反馈的积压风险等级的分布特征,调整所述短消息接收速率。
进一步可选地,接收消息系统发送的短消息之后,还包括:从所述消息系统的多个消息队列中,确定所述短消息所属的目标消息队列;根据所述目标资源对象反馈的积压风险等级的分布特征,调整所述短消息接收速率,包括:从所述目标资源对象反馈的积压风险等级中,确定与所述目标消息队列的对应的积压风险等级;根据与所述目标消息队列对应的积压风险等级的分布特征,调整与所述目标队列对应的短消息接收速率。
进一步可选地,所述多个消息队列分别与多个场景对应,任一场景对应的消息队列中的短消息具有相同的场景标签。
进一步可选地,获取所述目标资源对象对应的积压风险等级,包括:确定所述目标资源对象对应的消息主题包含的多个队列分组;任一队列分组包含多个优先级队列;根据所述多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算所述多个队列分组各自的积压风险等级;根据所述多个队列分组各自的积压风险等级,计算所述消息主题的积压风险等级。
进一步可选地,根据所述多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算所述多个队列分组各自的积压风险等级,包括:针对所述任一队列分组,确定所述队列分组中的优先级较高的目标优先级队列的短消息积压量,以及所述目标优先级队列的队首短消息的积压时长;根据所述目标优先级队列的短消息积压量以及所述队首短消息的积压时长,计算所述队列分组的积压风险等级。
进一步可选地,根据所述目标资源对象反馈的积压风险等级的分布特征,调整所述短消息接收速率,包括:根据所述目标资源对象在设定时长范围内对至少一种积压风险等级的反馈次数,计算所述至少一种积压风险等级各自的反馈次数占比;根据所述至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例;根据所述目标调速比例以及预设的基础接收速率,计算所述短消息接收速率的更新值。
进一步可选地,根据所述至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例,包括:按照由高到低的顺序,依次判断所述至少一种积压风险等级各自的反馈次数占比是否大于所述至少一种积压风险等级各自对应的占比阈值;在确定所述至少一种积压风险等级中的任一积压风险等级的反馈次数占比大于所述积压风险等级的占比阈值时,停止所述判断的操作,并根据积压风险等级的反馈次数占比以及所述积压风险等级的反馈次数比例范围和调速比例的对应关系,确定所述目标调速比例。
进一步可选地,调整所述短消息接收速率之后,还包括:根据所述短消息接收速率,设置用于控制短消息流量的令牌桶的令牌投放速率;根据所述令牌桶的剩余令牌数,采用令牌桶算法,对所述消息系统的短消息发送速率进行控制。
本申请实施例还提供一种服务器,包括:存储器和处理器;所述存储器用于存储一条或多条计算机指令;所述处理器用于执行所述一条或多条计算机指令以用于:执行本申请实施例提供的方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被处理器执行时能够实现本申请实施例提供的方法中的步骤。
在本申请实施例中,调度节点可按照设定的短消息接收速率,接收消息系统发送的短消息,并通过目标资源对象将该短消息发送至目标用户。同时,调度节点可获取目标资源对象针对该短消息反馈的积压风险等级,并根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率。在这种实施方式中,基于资源对象的反馈机制,调度节点可根据资源对象的积压风险,对短消息接收速率进行调整,实现了短消息下放流量的自动控制,有利于降低人力资源成本。同时,可降低人为因素产生的调速滞后影响,时效性和准确性更高。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请一示例性实施例提供的短消息服务系统的结构示意图;
图2为本申请一示例性实施例提供的短消息处理的流程示意图;
图3为本申请一示例性实施例提供的资源对象的结构示意图;
图4为本申请一示例性实施例提供的流量控制方法的流程示意图;
图5为本申请一示例性实施例提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
针对现有技术中,通过人工对短信下放速度进行调整存在的准确率较差,且人力成本较高的技术问题,在本申请一些实施例中,提供了一种解决方案,以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请一示例性实施例提供的短消息服务系统的结构示意图,如图1所示,短消息服务系统100包括:客户端10、接入节点20、调度节点30、决策节点40以及消息系统50。其中,调度节点的数量可以为多个,如图1所示。多个调度节点可对短消息进行分布式并行处理。
在短消息服务系统100中,短消息是指通信传输的对象,是一种信息的载体,短消息可实现为文本短消息(例如短信)、语音短消息、图像短消息等,本实施例不做限制。
其中,客户端10位于短消息服务系统100的客户侧,该客户指的是存在短消息发送需求的用户。例如,在电子商务场景中,该客户可实现为商家。商家可通过短消息服务系统100向消费者发放营销广告、优惠信息等。在电子支付场景,该客户可实现为金融机构。金融机构可通过短消息服务器系统100向待支付用户发送验证码,以确保支付过程的安全性。其中,该客户端10可安装在用户侧的智能设备上,例如计算机、平板电脑、智能手机等,本实施例不做限制。
其中,接入节点20位于短消息服务系统100的接入层,指的是用于接收外部设备(例如客户端设备)发送的短消息的设备,可实现为路由器、交换机、调制解调器等,本实施例不做限制。在本实施例中,接入节点20,用于:接收客户端发送的短消息,并将该短消息发送至任一调度节点。图1示意了接入节点20将短消息发送至调度节点30的情形。调度节点30可以是与接入节点20距离最近的调度节点。除调度节点30之外,接入节点20也可将短消息发送至调度节点30之外的其他调度节点,不再一一进行图示。
调度节点30可在接收到该短消息后,可根据该短消息,向消息系统50发送积压请求,以使得消息系统50对该短消息进行积压,以便于后续对短消息进行分布式处理。
其中,消息系统50,主要用于:将接收到的短消息添加到消息队列中,并按照“先进先出”的原则,对消息队列中的短消息进行出队处理。其中,任一短消息出队时,消息系统50可将该短消息发送到任一调度节点。图1示意了消息系统50将短消息发送至调度节点30的情形,除调度节点30之外,消息系统50也可将短消息发送至调度节点30之外的其他调度节点。即,多个调度节点均可从消息系统50获取短消息,以对消息系统50积压的短消息进行分布式处理,从而提升短消息发送效率。
任一调度节点接收到消息系统50发送的短消息后,可将该短消息分发至对应的用户,并在分发的过程中对消息系统50进行流量控制。其中,不同的调度节点对消息系统的流量控制逻辑相同,因此,在后续实施例中将以任一调度节点(即调度节点30)为例进行示例性说明。
调度节点30接收到消息系统50发送的短消息后,可基于决策节点40对该短消息的资源路径进行决策,并利用决策出的资源路径将该短消息发送至目标用户。其中,该目标用户指的短消息最终触达的用户,例如电子上午场景中的消费者、电子支付场景中的待支付用户等等。
在短消息服务系统100中,消息系统50可基于单个服务器或者服务器集群实现。该单个服务器或者服务器集群上,可部署有短消息处理应用,以向消费者提供短消息相关的服务。在一些实施例中,该短消息处理应用可实现为MetaQ(一种短消息服务引擎)。
其中,任一调度节点,可基于服务器设备实现,该服务器设备可以是常规服务器、云服务器、云主机、虚拟中心或者云上的弹性计算实例等,本实施例不做限制。其中,服务器设备的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,不再赘述。在本实施例中,任一调度节点可执行流量控制方法,以控制从消息系统50处接收到短消息的速率。以下将以调度节点30为例,对任一调度节点侧执行的流量控制方法进行示例性说明。
如图1所示,调度节点30包括流量控制模块以及资源对象。调度节点30可基于流量控制模块,按照设定的短消息接收速率,接收消息系统50发送的短消息,并将该短消息分配给目标资源对象,以通过该目标资源对象将该短消息发送至目标用户。调度节点30可基于流量控制模块,获取该目标资源对象针对该短消息反馈的积压风险等级,并根据该目标资源对象在设定时长范围内反馈的积压风险等级的分布特征,调整该短消息接收速率。
其中,短消息接收速率,指的是调度节点从消息系统处接收短消息的速率。该短消息接收速率,可采用QPS(Quer i es-per-second,每秒查询率)进行表示。在本实施例中,该短消息接收速率可以是动态调整的。例如,可按照设定的调整周期,动态调整短消息接收速率,也可根据资源对象的使用情况动态调整短消息接收速率,本实施例不做限制。该设定的短消息接收速率,可以是上一次动态调整后得到的短消息接收速率。
其中,资源对象,指的是对调度节点30对应的物理资源进行组合后得到的虚拟资源,一个资源对象可包括多个物理资源。每个物理资源可称为资源对象的一个子资源对象。其中,物理资源,指的是用于发送短消息的通信通道资源,一个物理资源,可对应调度节点与运营商之间的一个通信通道。其中,该通信通道用于提供短消息传输能力,一个通信通道可承接多个连接以实现短消息的并发处理。
其中,调度节点30可对应多个资源对象,在接收到消息系统50发送的短消息之后,可对该短消息的下发路径进行决策。在一些实施例中,调度节点可通过图1示意的决策节点40对短消息的下发路径进行决策。如图1所示,调度节点30可向决策节点40发送决策请求,决策节点40可按照设定的决策逻辑,从调度节点30对应的多个资源对象中,选择出用于下发该短消息的资源对象,并向调度节点30返回资源对象决策结果。
其中,该设定的决策逻辑可包括:按照短消息对应的短消息类型进行决策、按照短消息所属的地区签名进行决策、按照短消息的投诉率进行决策等,本实施例不做限制。决策节点40在具体进行决策时,还可进一步考虑下不同通信通道的QPS,以平衡不同通信通道的压力。在本实施例中,将调度节点从多个资源对象中决策出的用于下放该短消息的资源对象,标记为目标资源对象。
通过决策节点40决策出目标资源对象后,调度节点30可将该短消息分配给目标资源对象,以通过该目标资源对象将该短消息发送至目标用户。
对于目标资源对象而言,在接收到短消息后,可利用决策节点40进行二层决策,以决策出用于下发短消息的物理资源。如图1所示,调度节点30可向决策节点40发送决策请求。决策节点40可按照目标资源对象对应的多个物理资源各自的利用率,选择出用于下发该短消息的物理资源(即子资源对象),并向调度节点30返回物理资源决策结果。调度节点30可基于该决策出的物理资源下发短消息,并通过网关将短消息发送至用户的终端设备。
在本实施例中,调度节点30可在每次确定短消息对应的目标资源对象时,获取该目标资源对象针对该短消息反馈的积压风险等级。其中,该积压风险等级,用于表示目标资源对象当前的消息积压风险的高低程度,该积压风险的高低程度可采用积压风险等级进行表示。例如,积压风险等级可以为高级、中级、低级;或者,积压风险等级可以从高到低依次为一级、二级、三级、四级、五级等。当目标资源对象包含的物理资源的数量相对固定时,向目标资源对象分配短消息的速率越快,则目标资源的消息积压风险越高。其中,积压风险等级,可根据目标资源对象包含的物理资源的实际积压情况进行计算得到,具体的计算过程将在后续的实施例中进行说明,此处不赘述。
对调度节点30而言,可在每次通过目标资源对象将接收到的短消息发送给用户时,实时获取目标资源对象反馈的积压风险等级,以感知目标资源对象实时的短消息积压情况。在此基础上,调度节点30可根据目标资源对象反馈的积压风险等级的分布特征,调整短消息接收速率。
在一些实施例中,积压风险等级的分布特征可根据目标资源对象反馈的一定数量的积压风险等级确定。例如,可根据目标资源对象反馈的500个积压风险等级,分析积压风险等级的分布特征。例如,该500个积压风险等级的分布特征分析结果可以为:低积压风险占比为30%、高积压风险占比为50%、中积压风险占比为20%。
在另一些实施例中,积压风险等级的分布特征可根据目标资源对象在设定时长范围内反馈的积压风险等级确定。其中,该设定时长范围,可根据需求进行设置,例如,可设置设定时长范围为30秒、60秒、90秒等,本实施例不做限制。
其中,积压风险等级的分布特征,用于描述不同积压风险等级的反馈频次。高积压风险等级的反馈频次越大,则表明目标资源对象的短消息积压情况越严重,调度节点30应当适当降低短消息接收速率以避免下游资源被击穿。低积压风险等级的反馈频次越大,则表明目标资源对象的短消息积压情况越轻微,应当适当提升短消息接收速率以充分利用已有资源。
在本实施例中,调度节点可按照设定的短消息接收速率,接收消息系统发送的短消息,并通过目标资源对象将该短消息发送至目标用户。同时,调度节点可获取目标资源对象针对该短消息反馈的积压风险等级,并根据该目标资源对象在设定时长范围内反馈的积压风险等级的分布特征,调整该短消息接收速率。在这种实施方式中,基于资源对象的反馈机制,调度节点可根据资源对象的积压风险,对短消息接收速率进行调整,实现了短消息下放流量的自动控制,有利于降低人力资源成本。同时,可降低人为因素产生的调速滞后影响,时效性和准确性更高。
在一些示例性的实施例中,在消息系统侧,短消息按照队列进行存储。消息系统具有多个消息队列,每个消息队列可按照各自的短消息发送速率向不同的调度节点下发短消息。
基于此,针对调度节点30而言,调度节点30在接收消息系统50发送的短消息之后,可从消息系统50的多个消息队列中,确定该短消息所属的目标消息队列。相应地,调度节点30根据该目标资源对象在设定时长范围内反馈的积压风险等级的分布特征,调整该短消息接收速率时,可从该目标资源对象在设定时长范围内反馈的积压风险等级中,确定与该目标消息队列的对应的积压风险等级;根据与该目标消息队列对应的积压风险等级的分布特征,调整与该目标队列对应的短消息接收速率。即,调度节点可实现消息队列级别的调速。
可选地,消息系统侧的消息队列按照场景进行划分。即,消息系统的多个消息队列分别与多个场景对应,每个消息队列可称为场景队列。其中,场景用于表示短消息的用途,多个场景队列,分别用于存放客户端发送的不同场景对应的短消息。例如,消息系统可包括教育场景对应的消息队列、金融场景对应的消息队列、餐饮场景对应的消息队列、音视频场景对应的消息队列等等。除上述场景队列外,还可包括用于存放未能进行场景分类的短消息的通用场景队列,如图2所示。
其中,对于客户端而言,当需要发送不同场景的短消息时,可向短消息服务系统100申请不同的账号。当通过某一账号向短消息服务系统发送短消息时,该被发送的短消息可携带与账号匹配的场景标签。短消息服务系统100中的消息系统50,可根据短消息携带的场景标签,将短消息添加至对应的场景队列中。
在本实施例中,为便于将不同的短消息存放进不同的场景队列,可为每个短消息添加不同维度的标签。可选地,除了场景标签之外,还可为短消息添加短消息类型和/或投诉率对应的标签。其中,该短消息类型包括:验证码类型、通知类型或者广告类型。例如,金融场景对应的消息队列中,每个短消息的标签可以为:金融_验证码_0001(投诉率为1%)、金融_验证码_0002(投诉率为2%)、金融_通知_0001(投诉率为5%)等等。
对于消息系统50而言,其上的不同场景队列,可分别按照各自的短消息发送速率向各自对应的调度节点下放被积压的短消息。调度节点30在接收消息系统发送的短消息之后,可确定该短消息所属的目标场景队列。并通过图2所示的一层决策,确定用于下发该短消息的目标资源对象。确定目标资源对象后,调度节点30可通过目标资源对象将该短消息发送至用户,并可获取目标资源对象针对该短消息反馈的积压风险等级。基于目标资源对象在设定时长范围内反馈的积压风险等级,调度节点30可确定与该目标场景队列对应的积压风险等级的分布,并根据与目标场景队列对应的积压风险等级的分布,调整与目标场景对应的短消息接收速率。
继续以金融场景以及教育场景为例。假设,某一调度节点按照速率V1接收消息系统的金融队列下放的短消息,按照速率V2接收消息系统的教育队列下放的短消息。在每次接收到短消息后,调度节点可利用对应的资源对象将短消息发送至用户,并获取资源对象针对短消息反馈的积压风险等级。若在设定时长范围内,接收资源对象到针对教育队列中的短消息反馈的高积压风险等级的次数较多,则调度节点可降低速率V2。若在设定时长范围内,接收到针对金融队列中的短消息反馈的低积压风险等级的次数较少,则调度节点可提升速率V1。
在这种实施方式中,通过统计资源对象对不同消息队列中的短消息反馈的积压风险等级,可实时计算出资源对象针对不同消息队列中的短消息的承接压力。基于计算出的承接压力,调度节点可调整针对不同消息队列的短消息接收速率,从而实现了队列级别的、精准的流量控制。
以下将对调度节点获取资源对象对应的积压风险等级的可选实施方式进行示例性说明。
在一些可选的实施例中,如任一资源对象可采用消息主题(topic)存放接收到的短消息,图2所示的主题短消息a、主题短消息b以及主题短消息c。可选地,该主题队列,可基于EMQ(一种短消息推送服务)实现,本实施例对此不做限制。EMQ是一种分装后与MetaQ相似的消息队列,其底层数据库可拆分出大量的消息主题(topic)。
根据前述实施例的记载,资源对象,是指对物理资源进行组合后得到的虚拟资源。任一该资源对象对应的物理资源,可从该资源对象的消息主题中取出短消息,并发送至用户。
其中,任一消息主题可按照通信通道的连接数,被划分为多个队列分组(group),如图3所示的队列分组1、队列分组2…队列分组N。例如,可将50个连接划分为一个队列分组,从而使得一个队列分组的流量承接能力为50QPS。
其中,任一队列分组包含多个优先级队列。其中,优先级队列,指的是按照优先级高低不同生成的不同消息队列。在一些实施例中,可按照用户优先级和/或短消息类型进行划分。可选地,该短消息类型可包括:验证码类型、通知类型、广告类型等等。例如,会员用户的队列的优先级高于非会员用户的队列的优先级。又例如,验证码类型的队列的优先级高于通知类型的队列的优先级,通知类型的队列的优先级,高于广告类型的队列的优先级。如图3所示,每个队列分组可包括高、中、低三个优先级队列。优先级队列的优先级等级越高,则其队列中的短消息下发至用户的速率越快。
继续以目标资源对象为例,可选地,调度节点30在获取目标资源对象对应的积压风险等级时,可确定该目标资源对象对应的消息主题包含的多个队列分组,并根据该多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算该多个队列分组各自的积压风险等级。
其中,任一优先级队列的短消息积压量,指的是该优先级队列中尚未出队的短消息的数量。任一优先级队列的短消息积压时间,可以是该优先级队列中位于队首的短消息的积压时间。按照队列先进先出的原则,该队首的短消息的积压时间,是该优先级队列的最大积压时间。
以任一队列分组为例,可选地,可确定该队列分组中的优先级较高的目标优先级队列的短消息积压量,以及该目标优先级队列的队首短消息的积压时长;根据该目标优先级队列的短消息积压量以及该队首短消息的积压时长,计算该队列分组的积压风险等级。若队列分组包含高、中、低三个优先级队列,则目标优先级队列可以为高优先级队列。其中,短消息积压量、队首短消息的积压时长与积压风险等级的关系,可以采用二维表格进行表达。在该二维表格中,可存储有不同数值范围的短消息积压量以及队首短消息的积压时长与积压风险等级的对应关系。根据目标优先级队列的短消息积压量以及队首短消息的积压时长查询该二维表格,即可确定目标优先级队列的积压风险等级。由于目标优先级队列的优先级较高,因此,可直接将标优先级队列的积压风险等级作为目标优先级队列所属的队列分组的积压风险等级。
同理,可基于上述实施方式,计算得到多个队列分组各自的积压风险等级。根据该多个队列分组各自的积压风险等级,可计算该消息主题的积压风险等级。可选地,可从该多个队列分组各自的积压风险等级中,选择最高的积压风险等级,作为该消息主题的积压风险等级;或者,可以计算多个队列分组的积压风险等级的平均值,作为该消息主题的积压风险等级,本实施例不做限制。
在上述各实施例的基础上,调度节点30可根据该目标资源对象在设定时长范围内的积压风险等级的反馈次数,对短消息接收速率进行调整。继续参考图2所示,调度节点在将场景队列中的短消息下放到资源对象后,资源对象可反馈积压风险等级。调度节点中的数据收集模块,可按照短消息的多个维度的标签,收集资源对象对不同场景队列中的短消息反馈的积压风险等级,并计算积压风险等级的分布。调度节点中的定时任务,可定时获取积压风险等级,并按规则分场景调速。其中,该定时任务的定时的时长可以是30秒、60秒、90秒或者其他时长,本实施例不做限制。
可选地,调度节点中的数据收集模块在根据该目标资源对象在设定时长范围内反馈的积压风险等级的分布特征,调整该短消息接收速率时,可根据该目标资源对象在该设定时长范围内对至少一种积压风险等级的反馈次数,计算该至少一种积压风险等级各自的反馈次数占比。该至少一种积压风险等级各自的反馈次数占比,可用于表示不同积压风险等级的分布特征。根据该至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,调度节点可确定目标调速比例。
在一些可选的实施例中,预设的积压风险等级的反馈次数比例范围和调速比例的对应关系可采用以下表格所示:
应当理解,上述表格中的积压风险等级划分以及具体数值,仅用于示例性举例说明使用,并不对本申请的保护范围构成限制。
在一些示例性的实施例中,基于上述调速比例的对应关系,确定目标调速比例时,调度节点可按照由高到低的顺序,依次判断该至少一种积压风险等级各自的反馈次数占比是否大于该至少一种积压风险等级各自对应的占比阈值。在确定该至少一种积压风险等级中的任一积压风险等级的反馈次数占比大于该积压风险等级的占比阈值时,停止该判断的操作,并根据积压风险等级的反馈次数占比以及该积压风险等级的反馈次数比例范围和调速比例的对应关系,确定该目标调速比例。
以下将结合上述表格进行进一步示例性说明。
步骤S1、统计一个积压风险等级收集周期内,高积压风险等级对应的反馈次数。
若高积压风险等级的反馈次数的占比在90-100(%)范围内,则查询上述表格确定目标调速比例为0.1;若高积压风险等级的反馈次数的占比在60-90(%)范围内,则查询上述表格确定目标调速比例为0.2;若高积压风险等级的反馈次数的占比在30-60(%)范围内,则查询上述表格确定目标调速比例为0.3;若高积压风险等级的反馈次数的占比在30(%)以下,则可执行步骤S2。
步骤S2、统计一个积压风险等级收集周期内,中积压风险等级对应的反馈次数。
若中积压风险等级的反馈次数的占比在90-100(%)范围内,则查询上述表格确定目标调速比例为0.5;若中积压风险等级的反馈次数的占比在80-90(%)范围内,则查询上述表格确定目标调速比例为0.7;若中积压风险等级的反馈次数的占比在50-80(%)范围内,则查询上述表格确定目标调速比例为0.8;若中积压风险等级的反馈次数的占比在30-50(%)范围内,则查询上述表格确定目标调速比例为0.9;若中积压风险等级的反馈次数的占比在30(%)以下,则执行步骤S3。
步骤S3、统计一个积压风险等级收集周期内,低积压风险等级对应的反馈次数。
若低积压风险等级的反馈次数的占比在90-100(%)范围内,则查询上述表格确定目标调速比例为1.0;若低积压风险等级的反馈次数的占比在80-90(%)范围内,则查询上述表格确定目标调速比例为1.5;若低积压风险等级的反馈次数的占比在50-80(%)范围内,则查询上述表格确定目标调速比例为2.0;若低积压风险等级的反馈次数的占比在30-50(%)范围内,则查询上述表格确定目标调速比例为2.7;若低积压风险等级的反馈次数的占比在30(%)以下,则执行步骤S4。
步骤S4、将调速比例设置为4.0。
确定目标调速比例后,调度节点可根据该目标调速比例以及预设的基础接收速率,计算该短消息接收速率的更新值。即,新的短消息接收速率=基础接收速率*目标调速比例。
在上述实施方式中,通过建立积压风险等级,可较为准确地衡量下游资源的积压能力,并判断下游资源是否充足。下游资源的高风险等级的占比越高,则短消息的接收速率越低,从而,可灵活地根据下游资源的积压风险比例分布调整短消息的接收速率,提升资源的利用率。
在上述各实施例的基础上,可选地,调度节点在调整该短消息接收速率之后,可进一步根据该短消息接收速率,设置用于控制短消息流量的令牌桶的令牌投放速率。例如,一个短消息可对应令牌桶中的一个令牌。若调度节点的短消息接收速率为14W QPS,则可设置令牌桶的令牌投放速率也为14W QPS。根据该令牌桶的剩余令牌数,调度节点可采用令牌桶算法,对消息系统的短消息发送速率进行控制。其中,令牌桶算法是指,当一个短消息下发请求到达时,若令牌桶中存在至少一个令牌,则接收该短消息,并删除一个令牌。当一个短消息下发请求到达时,若令牌桶中不存在令牌,则拒绝该短消息。当令牌桶中的令牌可按照令牌投放速率不断增加时,可通过令牌投放速率,控制消息系统的短消息发送速率,不再赘述。
值得说明的是,在本申请实施例中,任一调度节点,可采用上述以及下述各实施例提供的流量控制方法控制短消息的接收速率,实现了单机(即单个调度节点)的流量控制。从而,可将集群流量控制转化为单机流量控制,避免集群多设备之间因数据交互产生的问题,极大提升了数据处理能力以及响应效率。
除前述实施例提供的短消息服务系统之外,本申请实施例还提供一种在调度节点侧执行的流量控制方法。
图4为申请一示例性实施例提供的流量控制方法的流程示意图,如图4所示,该方法在任一调度节点一侧执行时,主要用于:
步骤401、按照设定的短消息接收速率,接收消息系统发送的短消息。
步骤402、将该短消息分配给目标资源对象,以通过该目标资源对象将该短消息发送至目标用户。
步骤403、获取该目标资源对象针对该短消息反馈的积压风险等级。
步骤404、根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率。
进一步可选地,接收消息系统发送的短消息之后,还包括:从该消息系统的多个消息队列中,确定该短消息所属的目标消息队列;根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率,包括:从该目标资源对象反馈的积压风险等级中,确定与该目标消息队列的对应的积压风险等级;根据与该目标消息队列对应的积压风险等级的分布特征,调整与该目标队列对应的短消息接收速率。
进一步可选地,该多个消息队列分别与多个场景对应,任一场景对应的消息队列中的短消息具有相同的场景标签。
进一步可选地,获取该目标资源对象对应的积压风险等级的一种方式,可包括:确定该目标资源对象对应的消息主题包含的多个队列分组;任一队列分组包含多个优先级队列;根据该多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算该多个队列分组各自的积压风险等级;根据该多个队列分组各自的积压风险等级,计算该消息主题的积压风险等级。
进一步可选地,根据该多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算该多个队列分组各自的积压风险等级的一种方式,可包括:针对该任一队列分组,确定该队列分组中的优先级较高的目标优先级队列的短消息积压量,以及该目标优先级队列的队首短消息的积压时长;根据该目标优先级队列的短消息积压量以及该队首短消息的积压时长,计算该队列分组的积压风险等级。
进一步可选地,根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率的一种方式,可包括:根据该目标资源对象在设定时长范围内对至少一种积压风险等级的反馈次数,计算该至少一种积压风险等级各自的反馈次数占比;根据该至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例;根据该目标调速比例以及预设的基础接收速率,计算该短消息接收速率的更新值。
进一步可选地,根据该至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例的一种方式,可包括:按照由高到低的顺序,依次判断该至少一种积压风险等级各自的反馈次数占比是否大于该至少一种积压风险等级各自对应的占比阈值;在确定该至少一种积压风险等级中的任一积压风险等级的反馈次数占比大于该积压风险等级的占比阈值时,停止该判断的操作,并根据积压风险等级的反馈次数占比以及该积压风险等级的反馈次数比例范围和调速比例的对应关系,确定该目标调速比例。
进一步可选地,调整该短消息接收速率之后,还包括:根据该短消息接收速率,设置用于控制短消息流量的令牌桶的令牌投放速率;根据该令牌桶的剩余令牌数,采用令牌桶算法,对该消息系统的短消息发送速率进行控制。
在本申请实施例中,调度节点可按照设定的短消息接收速率,接收消息系统发送的短消息,并通过目标资源对象将该短消息发送至目标用户。同时,调度节点可获取目标资源对象针对该短消息反馈的积压风险等级,并根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率。在这种实施方式中,基于资源对象的反馈机制,调度节点可根据资源对象的积压风险,对短消息接收速率进行调整,实现了短消息下放流量的自动控制,有利于降低人力资源成本。同时,可降低人为因素产生的调速滞后影响,时效性和准确性更高。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤401至步骤404的执行主体可以为设备A;又比如,步骤401和402的执行主体可以为设备A,步骤403的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如401、402等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的短消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图5示意了本申请一示例性实施例提供的服务器的结构示意图,该服务器适用于前述实施例提供的短消息服务系统中的调度节点。如图5所示,该服务器包括:存储器501、处理器502以及通信组件503。
存储器501,用于存储计算机程序,并可被配置为存储其它各种数据以支持在服务器上的操作。这些数据的示例包括用于在服务器上操作的任何应用程序或方法的指令。
其中,存储器501可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器502,与存储器501耦合,用于执行存储器501中的计算机程序,以用于:通过通信组件503按照设定的短消息接收速率,接收消息系统发送的短消息;将该短消息分配给目标资源对象,以通过该目标资源对象将该短消息发送至目标用户;获取该目标资源对象针对该短消息反馈的积压风险等级;根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率。
进一步可选地,处理器502在接收消息系统发送的短消息之后,还用于:从该消息系统的多个消息队列中,确定该短消息所属的目标消息队列;根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率,包括:从该目标资源对象反馈的积压风险等级中,确定与该目标消息队列的对应的积压风险等级;根据与该目标消息队列对应的积压风险等级的分布特征,调整与该目标队列对应的短消息接收速率。
进一步可选地,该多个消息队列分别与多个场景对应,任一场景对应的消息队列中的短消息具有相同的场景标签。
进一步可选地,处理器502在获取该目标资源对象对应的积压风险等级时,具体用于:确定该目标资源对象对应的消息主题包含的多个队列分组;任一队列分组包含多个优先级队列;根据该多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算该多个队列分组各自的积压风险等级;根据该多个队列分组各自的积压风险等级,计算该消息主题的积压风险等级。
进一步可选地,处理器502在根据该多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算该多个队列分组各自的积压风险等级时,具体用于:针对该任一队列分组,确定该队列分组中的优先级较高的目标优先级队列的短消息积压量,以及该目标优先级队列的队首短消息的积压时长;根据该目标优先级队列的短消息积压量以及该队首短消息的积压时长,计算该队列分组的积压风险等级。
进一步可选地,处理器502在根据该目标资源对象反馈的积压风险等级的分布特征,调整该短消息接收速率时,具体用于:根据该目标资源对象在设定时长范围内对至少一种积压风险等级的反馈次数,计算该至少一种积压风险等级各自的反馈次数占比;根据该至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例;根据该目标调速比例以及预设的基础接收速率,计算该短消息接收速率的更新值。
进一步可选地,处理器502在根据该至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例时,具体用于:按照由高到低的顺序,依次判断该至少一种积压风险等级各自的反馈次数占比是否大于该至少一种积压风险等级各自对应的占比阈值;在确定该至少一种积压风险等级中的任一积压风险等级的反馈次数占比大于该积压风险等级的占比阈值时,停止该判断的操作,并根据积压风险等级的反馈次数占比以及该积压风险等级的反馈次数比例范围和调速比例的对应关系,确定该目标调速比例。
进一步可选地,处理器502在调整该短消息接收速率之后,还用于:根据该短消息接收速率,设置用于控制短消息流量的令牌桶的令牌投放速率;根据该令牌桶的剩余令牌数,采用令牌桶算法,对该消息系统的短消息发送速率进行控制。
进一步,如图5所示,该服务器还包括:电源组件504等其它组件。图5中仅示意性给出部分组件,并不意味着服务器只包括图5所示组件。
通信组件503被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G或5G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件可基于近场通信(NFC)技术、射频识别(RFID)技术、红外数据协会(IrDA)技术、超宽带(UWB)技术、蓝牙(BT)技术和其他技术来实现。
电源组件504,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
在本申请实施例中,调度节点可按照设定的短消息接收速率,接收消息系统发送的短消息,并通过目标资源对象将该短消息发送至目标用户。同时,调度节点可获取目标资源对象针对该短消息反馈的积压风险等级,并根据该目标资源对象在设定时长范围内反馈的积压风险等级的分布特征,调整该短消息接收速率。在这种实施方式中,基于资源对象的反馈机制,调度节点可根据资源对象的积压风险,对短消息接收速率进行调整,实现了短消息下放流量的自动控制,有利于降低人力资源成本。同时,可降低人为因素产生的调速滞后影响,时效性和准确性更高。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由服务器执行的各步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种流量控制方法,其特征在于,包括:
按照设定的短消息接收速率,接收消息系统发送的短消息;
将所述短消息分配给目标资源对象,以通过所述目标资源对象将所述短消息发送至目标用户;
获取所述目标资源对象针对所述短消息反馈的积压风险等级;
根据所述目标资源对象反馈的积压风险等级的分布特征,调整所述短消息接收速率。
2.根据权利要求1所述的方法,其特征在于,接收消息系统发送的短消息之后,还包括:从所述消息系统的多个消息队列中,确定所述短消息所属的目标消息队列;
根据所述目标资源对象反馈的积压风险等级的分布特征,调整所述短消息接收速率,包括:
从所述目标资源对象反馈的积压风险等级中,确定与所述目标消息队列的对应的积压风险等级;
根据与所述目标消息队列对应的积压风险等级的分布特征,调整与所述目标队列对应的短消息接收速率。
3.根据权利要求2所述的方法,其特征在于,所述多个消息队列分别与多个场景对应,任一场景对应的消息队列中的短消息具有相同的场景标签。
4.根据权利要求1所述的方法,其特征在于,获取所述目标资源对象对应的积压风险等级,包括:
确定所述目标资源对象对应的消息主题包含的多个队列分组;任一队列分组包含多个优先级队列;
根据所述多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算所述多个队列分组各自的积压风险等级;
根据所述多个队列分组各自的积压风险等级,计算所述消息主题的积压风险等级。
5.根据权利要求4所述的方法,其特征在于,根据所述多个队列分组各自包含的优先级队列的短消息积压量和/或短消息积压时间,计算所述多个队列分组各自的积压风险等级,包括:
针对所述任一队列分组,确定所述队列分组中的优先级较高的目标优先级队列的短消息积压量,以及所述目标优先级队列的队首短消息的积压时长;
根据所述目标优先级队列的短消息积压量以及所述队首短消息的积压时长,计算所述队列分组的积压风险等级。
6.根据权利要求1-5任一所述的方法,其特征在于,根据所述目标资源对象反馈的积压风险等级的分布特征,调整所述短消息接收速率,包括:
根据所述目标资源对象在设定时长范围内对至少一种积压风险等级的反馈次数,计算所述至少一种积压风险等级各自的反馈次数占比;
根据所述至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例;
根据所述目标调速比例以及预设的基础接收速率,计算所述短消息接收速率的更新值。
7.根据权利要求6所述的方法,其特征在于,根据所述至少一种积压风险等级各自的反馈次数占比以及预设的积压风险等级的反馈次数比例范围和调速比例的对应关系,确定目标调速比例,包括:
按照由高到低的顺序,依次判断所述至少一种积压风险等级各自的反馈次数占比是否大于所述至少一种积压风险等级各自对应的占比阈值;
在确定所述至少一种积压风险等级中的任一积压风险等级的反馈次数占比大于所述积压风险等级的占比阈值时,停止所述判断的操作,并根据积压风险等级的反馈次数占比以及所述积压风险等级的反馈次数比例范围和调速比例的对应关系,确定所述目标调速比例。
8.根据权利要求1-5任一项所述的方法,其特征在于,调整所述短消息接收速率之后,还包括:
根据所述短消息接收速率,设置用于控制短消息流量的令牌桶的令牌投放速率;
根据所述令牌桶的剩余令牌数,采用令牌桶算法,对所述消息系统的短消息发送速率进行控制。
9.一种服务器,其特征在于,包括:存储器和处理器;
所述存储器用于存储一条或多条计算机指令;
所述处理器用于执行所述一条或多条计算机指令以用于:执行权利要求1-8任一项所述的方法中的步骤。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,计算机程序被处理器执行时能够实现权利要求1-8任一项所述方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210108247.XA CN114501351B (zh) | 2022-01-28 | 2022-01-28 | 流量控制方法、设备及存储介质 |
PCT/CN2023/072761 WO2023143276A1 (zh) | 2022-01-28 | 2023-01-18 | 流量控制方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210108247.XA CN114501351B (zh) | 2022-01-28 | 2022-01-28 | 流量控制方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114501351A true CN114501351A (zh) | 2022-05-13 |
CN114501351B CN114501351B (zh) | 2024-04-26 |
Family
ID=81477373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210108247.XA Active CN114501351B (zh) | 2022-01-28 | 2022-01-28 | 流量控制方法、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114501351B (zh) |
WO (1) | WO2023143276A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277597A (zh) * | 2022-09-30 | 2022-11-01 | 北京金楼世纪科技有限公司 | 一种短消息队列调度方法、装置及可读存储介质 |
WO2023143276A1 (zh) * | 2022-01-28 | 2023-08-03 | 阿里巴巴(中国)有限公司 | 流量控制方法、设备及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116719630B (zh) * | 2023-08-11 | 2024-03-15 | 中邮消费金融有限公司 | 案件调度方法、设备、存储介质及装置 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090083431A1 (en) * | 2007-08-24 | 2009-03-26 | Krishna Balachandran | Content rate selection for media servers with proxy-feedback-controlled frame transmission |
CN101594588A (zh) * | 2009-06-30 | 2009-12-02 | 中兴通讯股份有限公司 | 一种短信终呼流量控制方法和系统 |
WO2010054564A1 (zh) * | 2008-11-17 | 2010-05-20 | 中兴通讯股份有限公司 | 一种小区短信的流量控制方法及系统 |
CN102065382A (zh) * | 2010-12-02 | 2011-05-18 | 中兴通讯股份有限公司 | 一种多媒体消息业务下发消息动态流控的方法和系统 |
US20120155297A1 (en) * | 2010-12-17 | 2012-06-21 | Verizon Patent And Licensing Inc. | Media gateway health |
CN102740258A (zh) * | 2012-07-05 | 2012-10-17 | 甘肃银光聚银化工有限公司 | 一种短信平台控制装置 |
CN105306258A (zh) * | 2015-09-25 | 2016-02-03 | 上海大汉三通数据通信有限公司 | 一种提交短信的控制方法及系统 |
CN105813040A (zh) * | 2016-05-12 | 2016-07-27 | 中国联合网络通信集团有限公司 | 短信发送方法、服务器和移动终端 |
CN107734475A (zh) * | 2017-11-15 | 2018-02-23 | 中国联合网络通信集团有限公司 | 基于短信链路的短信发送方法及业务平台 |
CN108200544A (zh) * | 2018-03-02 | 2018-06-22 | 北京国电通网络技术有限公司 | 短信下发方法和短信平台 |
CN108933993A (zh) * | 2018-07-03 | 2018-12-04 | 平安科技(深圳)有限公司 | 短信缓存队列选择方法、装置、计算机设备和存储介质 |
CN108966160A (zh) * | 2018-09-25 | 2018-12-07 | 厦门集微科技有限公司 | 一种短信处理方法、装置及计算机可读存储介质 |
CN108989239A (zh) * | 2017-06-02 | 2018-12-11 | 中兴通讯股份有限公司 | 过载保护方法及装置、控制器及存储介质 |
CN109347757A (zh) * | 2018-11-09 | 2019-02-15 | 锐捷网络股份有限公司 | 消息拥塞控制方法、系统、设备及存储介质 |
WO2020125521A1 (zh) * | 2018-12-20 | 2020-06-25 | 华为技术有限公司 | 控制网络拥塞的方法、装置及系统 |
CN113301515A (zh) * | 2020-06-01 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 短信通道连接的处理方法、装置、系统、设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110324250A (zh) * | 2018-03-29 | 2019-10-11 | 阿里巴巴集团控股有限公司 | 消息推送方法、设备及系统 |
CN114501351B (zh) * | 2022-01-28 | 2024-04-26 | 阿里巴巴(中国)有限公司 | 流量控制方法、设备及存储介质 |
-
2022
- 2022-01-28 CN CN202210108247.XA patent/CN114501351B/zh active Active
-
2023
- 2023-01-18 WO PCT/CN2023/072761 patent/WO2023143276A1/zh unknown
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090083431A1 (en) * | 2007-08-24 | 2009-03-26 | Krishna Balachandran | Content rate selection for media servers with proxy-feedback-controlled frame transmission |
WO2010054564A1 (zh) * | 2008-11-17 | 2010-05-20 | 中兴通讯股份有限公司 | 一种小区短信的流量控制方法及系统 |
CN101594588A (zh) * | 2009-06-30 | 2009-12-02 | 中兴通讯股份有限公司 | 一种短信终呼流量控制方法和系统 |
CN102065382A (zh) * | 2010-12-02 | 2011-05-18 | 中兴通讯股份有限公司 | 一种多媒体消息业务下发消息动态流控的方法和系统 |
US20120155297A1 (en) * | 2010-12-17 | 2012-06-21 | Verizon Patent And Licensing Inc. | Media gateway health |
CN102740258A (zh) * | 2012-07-05 | 2012-10-17 | 甘肃银光聚银化工有限公司 | 一种短信平台控制装置 |
CN105306258A (zh) * | 2015-09-25 | 2016-02-03 | 上海大汉三通数据通信有限公司 | 一种提交短信的控制方法及系统 |
CN105813040A (zh) * | 2016-05-12 | 2016-07-27 | 中国联合网络通信集团有限公司 | 短信发送方法、服务器和移动终端 |
CN108989239A (zh) * | 2017-06-02 | 2018-12-11 | 中兴通讯股份有限公司 | 过载保护方法及装置、控制器及存储介质 |
CN107734475A (zh) * | 2017-11-15 | 2018-02-23 | 中国联合网络通信集团有限公司 | 基于短信链路的短信发送方法及业务平台 |
CN108200544A (zh) * | 2018-03-02 | 2018-06-22 | 北京国电通网络技术有限公司 | 短信下发方法和短信平台 |
CN108933993A (zh) * | 2018-07-03 | 2018-12-04 | 平安科技(深圳)有限公司 | 短信缓存队列选择方法、装置、计算机设备和存储介质 |
CN108966160A (zh) * | 2018-09-25 | 2018-12-07 | 厦门集微科技有限公司 | 一种短信处理方法、装置及计算机可读存储介质 |
CN109347757A (zh) * | 2018-11-09 | 2019-02-15 | 锐捷网络股份有限公司 | 消息拥塞控制方法、系统、设备及存储介质 |
WO2020125521A1 (zh) * | 2018-12-20 | 2020-06-25 | 华为技术有限公司 | 控制网络拥塞的方法、装置及系统 |
CN113301515A (zh) * | 2020-06-01 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 短信通道连接的处理方法、装置、系统、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
王多;张华峰;: "电力企业智能短信一体化SMS平台系统设计应用", 电力信息化, no. 08 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023143276A1 (zh) * | 2022-01-28 | 2023-08-03 | 阿里巴巴(中国)有限公司 | 流量控制方法、设备及存储介质 |
CN115277597A (zh) * | 2022-09-30 | 2022-11-01 | 北京金楼世纪科技有限公司 | 一种短消息队列调度方法、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114501351B (zh) | 2024-04-26 |
WO2023143276A1 (zh) | 2023-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114501351B (zh) | 流量控制方法、设备及存储介质 | |
WO2018133306A1 (zh) | 内容分发网络中的调度方法和设备 | |
US11556541B2 (en) | Data query method, apparatus and device | |
US10554430B2 (en) | Systems and methods for providing adaptive flow control in a notification architecture | |
CN107580023A (zh) | 一种动态调整任务分配的流处理作业调度方法及系统 | |
CN109102135A (zh) | 订单分配方法及装置 | |
CN107819797B (zh) | 访问请求处理方法和装置 | |
US9843532B1 (en) | System, method, and computer program for managing distribution of a finite amount of resources | |
CN103139100A (zh) | 处理业务的方法和系统 | |
CN104734983B (zh) | 业务数据请求的调度系统、方法及装置 | |
CN109656685A (zh) | 容器资源调度方法和系统、服务器及计算机可读存储介质 | |
CN114189885A (zh) | 网元信息处理方法、设备及存储介质 | |
CN112561301A (zh) | 工单分配方法、装置、设备和计算机可读介质 | |
CN113315719A (zh) | 流量调度方法、设备、系统及存储介质 | |
CN110233892A (zh) | Cdn热点资源处理方法、系统及全局热片调度系统 | |
CN113852723B (zh) | 号码调度方法、设备及存储介质 | |
CN112905358B (zh) | 分布式系统的软件分发方法、装置及系统 | |
CN114936089A (zh) | 资源调度方法、系统、设备及存储介质 | |
CN116155829A (zh) | 网络流量处理方法、装置、介质及电子设备 | |
CN110782167B (zh) | 一种收派件区域管理方法、装置及存储介质 | |
CN102685236A (zh) | 一种消息处理方法及系统 | |
CN114338562A (zh) | 一种优先级的调度器、网关及调度装置 | |
CN112714037A (zh) | 一种线上服务质量的保障性能评估方法、装置及设备 | |
CN113538081A (zh) | 商城订单系统及其实现资源自适应调度的处理方法 | |
CN111754332B (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 |