CN108521382A - 一种消息发送方法、装置及系统 - Google Patents
一种消息发送方法、装置及系统 Download PDFInfo
- Publication number
- CN108521382A CN108521382A CN201810319430.8A CN201810319430A CN108521382A CN 108521382 A CN108521382 A CN 108521382A CN 201810319430 A CN201810319430 A CN 201810319430A CN 108521382 A CN108521382 A CN 108521382A
- Authority
- CN
- China
- Prior art keywords
- message
- period
- massage set
- sending
- format pond
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
- H04L47/564—Attaching a deadline to packets, e.g. earliest due date first
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Massaging Devices (AREA)
Abstract
本申请提供了一种消息发送方法、装置及系统,其中方法包括获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。本申请提供了可以在限制条件下发送消息的方案。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种消息发送方法、装置及系统。
背景技术
目前,在B/S架构中服务器可以发送消息至终端。通常情况下服务器会缓存消息,然后按照缓存的先后顺序发送消息至终端。但是上述方案仅仅适用于服务器在无限制条件下发送消息至终端的场景。
在一些应用场景下,服务器发送消息至终端过程中具有限制条件,例如,服务器需按照优先级高低来发送消息,又如服务器需要按照消息的时间窗口来发送消息;在该应用场景下,服务器需按照限制条件来发送消息,而非按照缓存消息时的先后顺序发送消息。
目前服务器发送消息的方式,无法在限制条件下发送消息。
发明内容
鉴于此,本申请提供一种消息发送方法、装置及系统,可以实现在限制条件下发送消息。
本申请提供了一种消息发送方法,包括:
获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;
基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;
从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
可选的,所述限制条件还包括消息的初始优先级;则所述基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段,包括:
在所述消息缓冲池中,确定最高初始优先级的多个消息对应的时间窗口;
将多个消息对应时间窗口的起始点以及结束点,获得多个时间点;
对所述多个时间点按时间顺序排列;
相邻两个时间点组成用于发送消息的时间段。
可选的,所述确定用于发送消息的时间段,包括确定用于发送消息的至少一个时间段;
则从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息,包括:
针对每个时间段:在该时间段内发送该时间段对应的消息集合中的消息,并从所述消息缓冲池中确定下一时间段对应的消息集合;
进入所述基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段的步骤。
可选的,所述从所述消息缓冲池中确定下一时间段对应的消息集合,包括:
计算所述消息缓冲池中消息在下一时间段的综合优先值;
按综合优先值对所述消息缓冲池中消息进行排序;
从所述消息缓冲池中按综合优先值由高至低的顺序,确定与所述下一时间段对应的消息集合。
可选的,在该时间段内发送该时间段对应的消息集合中的消息的过程中,还包括:
若在该时间段内接收到新增消息,则计算所述新增消息相对于该时间段的综合优先值;
若该综合优先值大于该时间段对应的消息集合中最小综合优先值,则将所述新增消息插入至所述消息集合的未发送消息中,并将所述消息集合中最小综合优先值对应的消息加入至所述消息缓存池;
若该综合优先值不大于该时间段对应的消息集合中最小综合优先值,则将所述新增消息加入所述消息缓存池。
可选的,所述从所述消息缓冲池中按综合优先值由高至低的顺序,确定与所述下一时间段对应的消息集合,包括:
根据所述下一时间段的时长,确定所述下一时间段预计传输的消息数量;
从所述消息缓冲池中按综合优先值由高至低的顺序,确定所述消息数量个消息;
将所述消息数量个消息,组成所述下一时间段对应的消息集合。
可选的,所述根据所述下一时间段的时长,确定所述下一时间段预计传输的消息数量,包括:
将所述下一时间段的时长与传输速率的乘积,确定为下一时间段的数据传输总量,并将数据传输总量与单个消息数据量的商,确定为所述下一时间段传输消息的理论数量;
基于所述理论数量,确定所述下一时间段预计传输的消息数量。
可选的,所述在该时间段内发送该时间段对应的消息集合中的消息,包括:
在该时间段内,按综合优先级由高至低的顺序依次发送消息;
对已发送消息添加已发送标志;
在该时间段内发送该时间段对应的消息集合中的消息之后,还包括:
在该时间段结束后确定该时间段对应的消息集合是否包含未发送消息;
若该时间段对应消息集合包含未发送消息,则将所述未发送消息加入至所述消息缓冲池。
本申请提供了一种消息发送装置,包括:
获取单元,用于获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;
确定时间段单元,用于基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;
发送单元,用于从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
本申请提供了一种消息发送系统,包括:
服务器,用于获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息;
终端,用于接收服务器发送的消息。
通过以上技术手段,可以实现以下有益效果:
本申请提供了一种消息发送方法,在限制条件包括消息发送时的时间窗口的情况下,可以根据消息缓冲池中消息的时间窗口确定发送消息的时间段,并确定时间段对应的消息集合,然后在时间段内发送时间段对应的消息集合中的消息。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种消息发送方法的流程图;
图2为本申请实施例公开的又一种消息发送方法的流程图;
图3为本申请实施例公开的一种时间窗口的示意图;
图4为本申请实施例公开的又一种消息发送方法的流程图;
图5a-5b为本申请实施例公开的又一种消息发送方法的流程图;
图6为本申请实施例公开的一种消息发送系统的结构示意图;
图7为本申请实施例公开的一种消息发送装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
由于服务器需按限制条件发送消息至终端,所以部分消息可能需要保存较长时间。为此,本申请提出在服务器中建立持久化的消息缓冲池,并且,服务器还可以基于限制条件对缓冲池中消息进行动态调整,以便适应服务器按限制条件发送消息至终端。
本申请提供一种消息发送方法,应用于服务器。参见图1,包括以下步骤:
步骤S101:获取多个携带有限制条件的消息并存储至消息缓冲池。
服务器可以获取自身生成消息,也可以接收其它设备生成并发送的消息。本实施例不限定服务器获取消息的来源。服务器获取的消息携带有消息发送时的限制条件,限制条件可以包括消息发送时的时间窗口和初始优先级。
下面举例对消息进行说明,参见表1:
消息包括但不限于:用于区分不同消息的消息标识(0001234)、用于表示消息发送方式的消息渠道(短信)、消息内容(XXX您尾号为8888卡产生逾期....)、用于限制消息发送时间的时间窗口(8:00am-9:00am)和用于表示消息重要程度的初始优先级(高)。
表1
其中,消息渠道可以包括短信、站内消息、邮件等方式;初始优先级可以分为三个等级:高、中、低。当然,消息还可以包括其它参数,可以根据实际应用场景来进行调整,在此不限定消息所包含的参数。
服务器在获取多个消息后,存储多个消息至消息缓冲池内。消息缓冲池的结构与消息结构类似。参见表2,下面对消息缓冲池进行举例说明。
表2
与消息结构相比,消息缓冲池增加综合优先值。综合优先值用于表示在消息缓冲池中消息的优先级情况,若综合优先值高则表示其优先级高,若综合优先级低则表示优先级低。
步骤S102:基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段。
消息缓冲池中各个消息均具有限制条件,在限制条件为时间窗口和初始优先级的情况下,服务器需要优先对高优先级的消息在其设定的时间窗口执行发送操作。
由于不同消息的时间窗口不尽一致且初始优先级为高的消息其重要程度较高,为此申请人基于高优先级的多个消息确定发送消息的时间段。
根据本申请提供的一个实施例,参见图2,可以包括以下实现过程:
步骤S1021:在所述消息缓冲池中,确定最高初始优先级的多个消息对应的时间窗口。
在消息缓冲池中消息的初始邮件级包括高、中、低的情况下,可以在消息缓冲池中查找初始优先级为高的多个消息,并确定该多个消息对应的时间窗口。
优选情况下,服务器会查找消息缓冲池中初始优先级为高的所有消息,并获取所有消息对应的时间窗口。
参见图3,假设服务器获取初始优先级为高的四个消息,四个消息的时间窗口分别为时间窗口1、时间窗口2、时间窗口3和时间窗口4。
步骤S1022:将多个消息对应时间窗口的起始点以及结束点,获得多个时间点。
可以理解的是,消息缓冲池中初始优先级为高的消息的时间窗口可能是一致的,为了便于后续操作,可以先对多个消息对应的时间窗口进行去重操作。也即,相同的时间窗口保留一个即可。
可以理解的是,一个时间窗口包括一个起始时间点(简称起始点)和一个结束时间点(简称结束点),那么多个消息对应的时间窗口则可以获得多个起始点和多个结束点,将多个起始点和多个结束点,统称为多个时间点。
步骤S1023:对所述多个时间点按时间顺序排列。
可以理解的是,多个时间点可能具有重复的时间点,为了简化后续操作,可以对多个时间点进行去重操作,以获得去重后的多个时间点。对去重后的多个时间点按时间顺序排列,获得按时间顺序排列的多个时间点。
参见图3,以时间窗口1、时间窗口2、时间窗口3、时间窗口4为例,在对四个时间窗口的起始点和结束点按时间顺序排列后,获得8个时间点B1、B2、B3、B4、B5、B6、B7和B8。
步骤S1024:相邻两个时间点组成用于发送消息的时间段。
服务器将相邻两个时间点组成一个时间段,从而确定用于发送消息的时间段。参见图3,B1-B2为一个时间段,B2-B3为一个时间段,B3-B4为一个时间段,等。
接步骤S102进入步骤S103:从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
步骤S1031:在该时间段内发送该时间段对应的消息集合。
该时间段的消息集合在该时间段之前确定,详细过程可以参见步骤S1033-S1035。
消息集合包括多个按优先级由高至低排列的多个消息。当达到该时间段时可以按综合优先级由高至低的顺序依次发送消息并对已发送消息添加已发送标志。
步骤S1032:判断该时间段是否为最后一个时间段,若是则进入步骤S102,若否则进入步骤S1033。
步骤S1033:在该时间段结束前,确定下一时间段并计算消息缓冲池中消息相对于下一时间段的综合优先值。
可以理解的是,由于消息具有不同的时间窗口,当其时间窗口与时间段无交集情况下,说明该消息无法在该时间段发送,所以其综合优先值较低。
当其时间窗口与时间段有交集的情况下,可以考虑消息的时间窗口的剩余时长,剩余时长越长则综合优先值越低,在同等剩余时长的情况下,消息的初始优先级越高则其综合优先值越高。
本实施例计算综合优先值的目的在于,综合考虑消息的初始优先级和时间窗口,从而确定消息在时间段内的优先级。
为了便于计算消息的综合优先值,本申请提供计算综合优先值的公式。参见下述公式(1):
当
其中,Level_num为综合优先值,Level为初始优先级,当初始优先级为高时取值为3,当初始优先级为中时取值为2;当初始优先级为低时取值为1;区间(T1,T2)为一个消息的时间窗口,区间(Bi,Bi+1)为时间段。
综合优先值Level_num公式的含义为:当一个消息的时间窗口(T1,T2)与当前的时间段(Bi,Bi+1)为空集时,也即该消息未到达时间窗口时,综合优先值Level_num为0。
当一个消息的时间窗口(T1,T2)与当前的时间段(Bi,Bi+1)非空集时,说明该消息到达时间窗口,按上述公式计算综合优先值Level_num。例如该时间段为(B1,B2),下一时间段为(B2,B3),可以按照上述公式对消息缓冲池中所有消息计算其综合优先值。
当然,本实施例中的公式为示意性举例的公式,可能不适用于所有情况,公式可以根据实际情况再进行完善,在此不再赘述。
步骤S1034:按综合优先值对所述消息缓冲池中消息进行排序。
可选的,可以采用二分排序方式对消息缓冲池中消息进行排序,从而获得消息的综合优先值由高至低顺序排序的消息缓冲池。
步骤S1035:从所述消息缓冲池中按综合优先值由高至低的顺序,确定与下一时间段对应的消息集合,进入步骤S1031。
根据本申请提供的一个实施例,参见图3,可以包括以下步骤:
步骤S301:根据所述下一时间段的时长,确定所述下一时间段预计传输的消息数量。
将下一时间段的时长与传输速率的乘积,确定为下一时间段的数据传输总量,并将数据传输总量与单个消息数据量的商,确定为所述下一时间段传输消息的理论数量;然后,基于所述理论数量,确定所述下一时间段预计传输的消息数量。
参见公式(2)计算理论数据量:
其中,N表示下一时间段传输消息的理论数量,V表示服务器与终端之间的传输速率,f表示一个消息的平均数据量。
可选的,消息数量可以基于理论数量而定,为了便于消息可以在时间段发送完成,可以在理论数量的基础上减少一些获得消息数量;或者,直接将理论数量作为消息数量。本步骤可以根据实际情况而定,在此不做限定。
步骤S302:从所述消息缓冲池中按综合优先值由高至低的顺序,确定所述消息数量个消息。
步骤S303:将所述消息数量个消息,组成所述下一时间段对应的消息集合。
可选的消息集合可以采用消息队列方式,消息队列中消息按综合优先值由高至低的顺序排列。
在确定下一时间段对应的消息集合后,可以在达到下一时间段时,将下一时间段作为该时间段,执行步骤S1031:在该时间段内发送该时间段对应的消息集合。
重复上述在时间段发送时间对应的消息集合的过程,直到最后一个时间段对应的消息集合发送完毕,然后重新进入步骤S102基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段。
按上述过程循环发送消息,直到数据缓冲池中的消息发送完毕。
以图3所示的时间段为例,在(B1,B2)时间段之前,确定消息缓冲池相对于(B1,B2)时间段的综合优先值,并确定(B1,B2)时间段对应的消息集合,并在时间达到(B1,B2)时间段时,发送(B1,B2)对应的消息集合中的消息。
在(B1,B2)时间段结束前,确定消息缓冲池相对于下一时间段(B2,B3)的综合优先值,并确定(B2,B3)时间段对应的消息集合,并在达到(B2,B3)时间段时,发送(B2,B3)对应的消息集合。
持续执行上述过程直到达到(B7,B8)时间段,在(B7,B8)时间段对应的消息集合发送完毕后,重新基于消息缓冲池重新确定时间段,并重新开始在时间段内发送消息集合的过程,直到消息缓冲池中的消息发送完毕。
可选的,若一个时间段结束后,若该时间段对应消息集合未发送完毕,即消息集合还包含未发送消息,则将所述未发送消息加入至所述消息缓冲池,以便计算消息相对于下一时间段的综合优先值,以确定是否在下一时间段发送。
可以理解的是,服务器在执行发送消息过程中,还可以接收新增消息。下面提供服务器对于新增消息的处理方式。参见图4,包括以下步骤:
步骤S401:服务器在时间点内接收新增消息,则计算该消息相对于当前时间段的综合优先值。
对于新增消息按公式(1)计算消息相对于当前时间段的综合优先值。
步骤S402:判断该综合优先值是否大于当前时间段对应的消息集合中最小综合优先值。若是,则进入步骤S403;若否则进入步骤S404。
当前时间段对应的消息集合按照综合优先值由高至低的顺序排列,为此,可以将新增消息的综合优先值与消息集合中最小综合优先值进行对比。
步骤S403:将所述新增消息插入至所述消息集合的未发送消息中,并将所述消息集合中最小综合优先值对应的消息加入至所述消息缓存池。
若该综合优先值大于该时间段对应的消息集合中最小综合优先值,则说明新增消息的优先级较高,按综合优先值的由高至低的顺序,插入当前消息集合的未发送消息中。
参见图5a,为当前消息集合一种实现形式,即采用消息队列方式实现消息集合,当前消息集合包括消息A、综合优先值为100,消息B、综合优先值为90,消息C、综合优先值为70,消息D、综合优先值为60。其中,消息A为已发送消息。
新增消息E,计算后获得综合优先值为80,则将新增消息E插入消息队列中消息B和消息C之间。
步骤S404:将所述新增消息加入所述消息缓存池。
若该综合优先值不大于该时间段对应的消息集合中最小综合优先值,则说明新增消息的优先级较低,可以插入消息缓冲池中,以便在后续的时间段发送消息。
通过以上技术手段,可以实现以下有益效果:
本申请提供了一种消息发送方法,在限制条件包括消息发送时的时间窗口的情况下,可以根据消息缓冲池中消息的时间窗口确定发送消息的时间段,并确定时间段对应的消息集合,然后在时间段内发送时间段对应的消息集合中的消息。
为了便于本领域技术人员了解,本申请提供了一种消息发送系统。参见图6,消息发送系统包括:
服务器100,用于获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
可以理解的是,服务器100可以接收其它设备发送消息,服务器100自身也可以生成消息,本实施例不限定服务器100获取消息的来源。
终端200,用于接收服务器200发送的消息。
关于服务器100的执行过程,可以详见图1所示的消息发送方法,在此不再赘述。
参见图7,本申请提供了一种消息发送装置,集成于上述消息发送系统中的服务器,消息发送装置包括:
获取单元71,用于获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;
确定时间段单元72,用于基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;
发送单元73,用于从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
所述限制条件还包括消息的初始优先级;则确定时间段单元72,具体包括:在所述消息缓冲池中,确定最高初始优先级的多个消息对应的时间窗口;将多个消息对应时间窗口的起始点以及结束点,获得多个时间点;对所述多个时间点按时间顺序排列;相邻两个时间点组成用于发送消息的时间段。
在具有至少一个时间段的情况下,发送单元73具体包括:针对每个时间段:在该时间段内发送该时间段对应的消息集合中的消息,并从所述消息缓冲池中确定下一时间段对应的消息集合;进入所述基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段的步骤。
发送单元73中所述从所述消息缓冲池中确定下一时间段对应的消息集合,包括:计算所述消息缓冲池中消息在下一时间段的综合优先值;按综合优先值对所述消息缓冲池中消息进行排序;从所述消息缓冲池中按综合优先值由高至低的顺序,确定与所述下一时间段对应的消息集合。
消息发送装置还包括:
新增消息单元74,用于若在该时间段内接收到新增消息,则计算所述新增消息相对于该时间段的综合优先值;若该综合优先值大于该时间段对应的消息集合中最小综合优先值,则将所述新增消息插入至所述消息集合的未发送消息中,并将所述消息集合中最小综合优先值对应的消息加入至所述消息缓存池;若该综合优先值不大于该时间段对应的消息集合中最小综合优先值,则将所述新增消息加入所述消息缓存池。
关于消息发送装置中获取单元71、确定时间段单元72以及发送单元73新增消息单元74的具体执行过程,可以详见图1所示的消息发送方法,在此不再赘述。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种消息发送方法,其特征在于,包括:
获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;
基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;
从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
2.如权利要求1所述的方法,其特征在于,所述限制条件还包括消息的初始优先级;则所述基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段,包括:
在所述消息缓冲池中,确定最高初始优先级的多个消息对应的时间窗口;
将多个消息对应时间窗口的起始点以及结束点,获得多个时间点;
对所述多个时间点按时间顺序排列;
相邻两个时间点组成用于发送消息的时间段。
3.如权利要求1或2所述的方法,其特征在于,所述确定用于发送消息的时间段,包括确定用于发送消息的至少一个时间段;
则从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息,包括:
针对每个时间段:在该时间段内发送该时间段对应的消息集合中的消息,并从所述消息缓冲池中确定下一时间段对应的消息集合;
进入所述基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段的步骤。
4.如权利要求3所述的方法,其特征在于,所述从所述消息缓冲池中确定下一时间段对应的消息集合,包括:
计算所述消息缓冲池中消息在下一时间段的综合优先值;
按综合优先值对所述消息缓冲池中消息进行排序;
从所述消息缓冲池中按综合优先值由高至低的顺序,确定与所述下一时间段对应的消息集合。
5.如权利要求4所述的方法,其特征在于,在该时间段内发送该时间段对应的消息集合中的消息的过程中,还包括:
若在该时间段内接收到新增消息,则计算所述新增消息相对于该时间段的综合优先值;
若该综合优先值大于该时间段对应的消息集合中最小综合优先值,则将所述新增消息插入至所述消息集合的未发送消息中,并将所述消息集合中最小综合优先值对应的消息加入至所述消息缓存池;
若该综合优先值不大于该时间段对应的消息集合中最小综合优先值,则将所述新增消息加入所述消息缓存池。
6.如权利要求4所述的方法,其特征在于,所述从所述消息缓冲池中按综合优先值由高至低的顺序,确定与所述下一时间段对应的消息集合,包括:
根据所述下一时间段的时长,确定所述下一时间段预计传输的消息数量;
从所述消息缓冲池中按综合优先值由高至低的顺序,确定所述消息数量个消息;
将所述消息数量个消息,组成所述下一时间段对应的消息集合。
7.如权利要求6所述的方法,其特征在于,所述根据所述下一时间段的时长,确定所述下一时间段预计传输的消息数量,包括:
将所述下一时间段的时长与传输速率的乘积,确定为下一时间段的数据传输总量,并将数据传输总量与单个消息数据量的商,确定为所述下一时间段传输消息的理论数量;
基于所述理论数量,确定所述下一时间段预计传输的消息数量。
8.如权利要求4所述的方法,其特征在于,所述在该时间段内发送该时间段对应的消息集合中的消息,包括:
在该时间段内,按综合优先级由高至低的顺序依次发送消息;
对已发送消息添加已发送标志;
在该时间段内发送该时间段对应的消息集合中的消息之后,还包括:
在该时间段结束后确定该时间段对应的消息集合是否包含未发送消息;
若该时间段对应消息集合包含未发送消息,则将所述未发送消息加入至所述消息缓冲池。
9.一种消息发送装置,其特征在于,包括:
获取单元,用于获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;
确定时间段单元,用于基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;
发送单元,用于从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息。
10.一种消息发送系统,其特征在于,包括:
服务器,用于获取多个携带有限制条件的消息并存储至消息缓冲池;其中所述限制条件包括消息发送时的时间窗口;基于所述消息缓冲池中消息的时间窗口,确定用于发送消息的时间段;从所述消息缓冲池中确定时间段对应的消息集合,并在时间段内发送时间段对应的消息集合中的消息;
终端,用于接收服务器发送的消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810319430.8A CN108521382B (zh) | 2018-04-11 | 2018-04-11 | 一种消息发送方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810319430.8A CN108521382B (zh) | 2018-04-11 | 2018-04-11 | 一种消息发送方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108521382A true CN108521382A (zh) | 2018-09-11 |
CN108521382B CN108521382B (zh) | 2021-12-03 |
Family
ID=63432363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810319430.8A Active CN108521382B (zh) | 2018-04-11 | 2018-04-11 | 一种消息发送方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108521382B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110677468A (zh) * | 2019-09-23 | 2020-01-10 | 阿里巴巴集团控股有限公司 | 消息处理方法、装置以及设备 |
CN115604667A (zh) * | 2022-10-11 | 2023-01-13 | 广东欣农互联科技有限公司(Cn) | 消息发送方法、装置、计算机设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1277509A (zh) * | 1999-06-09 | 2000-12-20 | 顾钧 | 一种受约束排队系统的调度方法 |
CN1604181A (zh) * | 2004-11-15 | 2005-04-06 | 北京中星微电子有限公司 | 一种midi音乐播放的方法及midi音乐播放装置 |
CN101222311A (zh) * | 2008-01-29 | 2008-07-16 | 杭州华三通信技术有限公司 | 实时报文丢包恢复方法、系统及接收端单元 |
CN101232466A (zh) * | 2008-02-27 | 2008-07-30 | 腾讯科技(深圳)有限公司 | 一种消息传输方法以及消息传输装置 |
CN102413152A (zh) * | 2010-09-20 | 2012-04-11 | 联想(北京)有限公司 | 一种向终端发送信息的方法及服务器 |
CN102857402A (zh) * | 2011-06-29 | 2013-01-02 | 腾讯科技(深圳)有限公司 | 发送网络消息的方法及系统 |
CN103298028A (zh) * | 2012-03-02 | 2013-09-11 | 华为技术有限公司 | 数据包处理方法及设备 |
CN104918281A (zh) * | 2014-03-10 | 2015-09-16 | 电信科学技术研究院 | 一种数据发送的方法及装置 |
-
2018
- 2018-04-11 CN CN201810319430.8A patent/CN108521382B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1277509A (zh) * | 1999-06-09 | 2000-12-20 | 顾钧 | 一种受约束排队系统的调度方法 |
CN1604181A (zh) * | 2004-11-15 | 2005-04-06 | 北京中星微电子有限公司 | 一种midi音乐播放的方法及midi音乐播放装置 |
CN101222311A (zh) * | 2008-01-29 | 2008-07-16 | 杭州华三通信技术有限公司 | 实时报文丢包恢复方法、系统及接收端单元 |
CN101232466A (zh) * | 2008-02-27 | 2008-07-30 | 腾讯科技(深圳)有限公司 | 一种消息传输方法以及消息传输装置 |
CN102413152A (zh) * | 2010-09-20 | 2012-04-11 | 联想(北京)有限公司 | 一种向终端发送信息的方法及服务器 |
CN102857402A (zh) * | 2011-06-29 | 2013-01-02 | 腾讯科技(深圳)有限公司 | 发送网络消息的方法及系统 |
CN103298028A (zh) * | 2012-03-02 | 2013-09-11 | 华为技术有限公司 | 数据包处理方法及设备 |
CN104918281A (zh) * | 2014-03-10 | 2015-09-16 | 电信科学技术研究院 | 一种数据发送的方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110677468A (zh) * | 2019-09-23 | 2020-01-10 | 阿里巴巴集团控股有限公司 | 消息处理方法、装置以及设备 |
CN115604667A (zh) * | 2022-10-11 | 2023-01-13 | 广东欣农互联科技有限公司(Cn) | 消息发送方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108521382B (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107276827B (zh) | 一种分布式存储系统中Qos的实现方法及装置 | |
CN110808922B (zh) | 一种消息处理方法、装置、存储介质及电子设备 | |
CN105450785B (zh) | 一种文件传输方法和装置 | |
CN104219286B (zh) | 流媒体处理方法、装置、客户端、cdn节点服务器及终端 | |
CN108965098B (zh) | 基于在线直播的消息推送方法、装置、介质和电子设备 | |
EP2782296A1 (en) | Anonymous communication system and transmission method of information transmission unit in anonymous communication system | |
JP2017504995A5 (zh) | ||
CN106412106B (zh) | 消息发送方法和装置 | |
CN107920108A (zh) | 一种媒体资源的推送方法、客户端及服务器 | |
CN108521382A (zh) | 一种消息发送方法、装置及系统 | |
CN109726092A (zh) | 总线处理效率评估方法、系统和计算机存储介质 | |
CN107579929B (zh) | 一种可靠连接通信队列对的设置方法、系统及相关装置 | |
US20170013083A1 (en) | Data processing method and apparatus used for terminal application | |
CN104168174A (zh) | 一种传输信息的方法及装置 | |
CN108712494A (zh) | 处理异步消息的方法、装置及设备 | |
CN112035066A (zh) | 日志保留时长的计算方法及装置 | |
CN111510771B (zh) | 清晰度切换算法的选择方法、系统、设备及介质 | |
CN110995796A (zh) | 一种基于专线的数据传输方法及装置 | |
CN108090087B (zh) | 文件处理方法及装置 | |
CN110266814B (zh) | 传输方法及传输装置 | |
US10250515B2 (en) | Method and device for forwarding data messages | |
US8953469B2 (en) | Communication device and computer program product | |
CN113127561B (zh) | 业务单号的生成方法、装置、电子设备和存储介质 | |
CN104811365B (zh) | 基于实时沟通社交群体的消息投放方法、系统及服务器 | |
CN109743263B (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221116 Address after: 100005 No. 69, inner main street, Dongcheng District, Beijing, Jianguomen Patentee after: AGRICULTURAL BANK OF CHINA Patentee after: Agricultural Bank of China Financial Technology Co.,Ltd. Address before: 100005 No. 69, inner main street, Dongcheng District, Beijing, Jianguomen Patentee before: AGRICULTURAL BANK OF CHINA |
|
TR01 | Transfer of patent right |