一种消息推送方法、装置及推送服务器的制造方法_3

文档序号:8342849阅读:来源:国知局
的数据包推送数量及时间后,可根据所述时间和所述数量,计算所述第一链路上一次推送所述推送服务器所获取的数据包的速率;并确定推送消息中携带的推送请求对应的请求速率范围,若所计算的数据包推送速率未处于所述请求速率范围内,则将推送消息转发至其他链路进行推送;
[0083]其他链路可以是其他的任一链路(若转发至的链路还不满足所要求的推送速率,则再转发给其他链路,直至推送消息转发至满足所要求的推送速率的链路);
[0084]可选的,本发明实施例还可设置速率监控服务器,对推送服务器的各条链路的速率进行监控,通过速率监控服务器作为推送消息的转发桥梁,可使得推送消息准确转发至推送速率满足所要求的推送速率的链路。
[0085]本发明实施例提供的消息推送方法中,通过反映链路的质量情况的上一推送周期所对应的数据包推送数量及时间,对推送服务器在下一推送周期所推送的数据包数量进行调整,可实现链路质量变差时,链路在下一推送周期所推送的数据包的数量减少,达到减少数据包丢包,降低推送延迟,提高推送质量的目的。
[0086]下面对本发明实施例提供的消息推送装置进行介绍,下文描述的消息推送装置可与上文描述的消息推送方法相互对应参照。
[0087]图6为本发明实施例提供的消息推送装置的结构框图,该装置可应用于推送服务器,参照图6,该装置可以包括:
[0088]上一推送信息确定模块100,用于在进行消息推送的过程中,确定推送服务器的第一链路在上一推送周期所对应的数据包推送数量及时间,所述第一链路为所述推送服务器的任一链路;
[0089]调整模块200,用于根据所述上一推送周期所对应的数据包推送数量及时间,调整所述第一链路在下一推送周期所推送的数据包数量;
[0090]下一推送控制模块300,用于控制所述第一链路在下一推送周期,推送与调整后的所述数据包数量对应的数据包。
[0091]可选的,在进行消息推送的过程中,所述推送服务器分批次获取所述消息的数据包,一次获取若干数量的数据包;一个所述推送周期为,所述第一链路推送所述推送服务器一次获取的数据包的时间;对应的,图7示出了上一推送信息确定模块100的一种可选结构,参照图7,上一推送信息确定模块100可以包括:
[0092]上一次推送信息确定单元110,用于确定所述推送服务器上一次获取的数据包的数量,及所述第一链路推送所述数量的数据包的时间。
[0093]可选的,图8示出了本发明实施例提供的调整模块200的一种可选结构,参照图8,调整模块200可以包括:
[0094]公式计算单元210,用于设所述推送服务器上一次获取的数据包的数量为M个,所述第一链路上一次推送所述M个数据包的时间为B秒,下一次推送数据包的时间区间最大值为A秒,所述第一链路下一次所推送的数据包数量为T ;根据公式T = (1_Β/Αθ*Μ确定所述第一链路下一次所推送的数据包数量,其中,i = 1-N的整数。
[0095]可选的,图9示出了本发明实施例提供的调整模块200的另一种可选结构,参照图9,调整模块200可以包括:
[0096]第一速率计算单元220,用于根据所述时间和所述数量,计算所述第一链路上一次推送所述推送服务器所获取的数据包的速率;
[0097]下一时间确定单元221,用于确定所述第一链路下一次推送所述推送服务器所获取的数据包的时间区间最大值;
[0098]下一推送数量确定单元222,用于根据所述时间区间最大值及所述第一链路上一次推送所述推送服务器所获取的数据包的速率,确定所述第一链路在所述时间区间最大值内的可推送数据包数量,所述可推送数据包数量为第一链路下一次所推送的数据包数量。
[0099]可选的,图10示出了本发明实施例提供的调整模块200的再一种可选结构,参照图10,调整模块200可以包括:
[0100]第二速率计算单元230,用于根据所述时间和所述数量,计算所述第一链路上一次推送所述推送服务器所获取的数据包的速率;
[0101]用户接收速率确定单元231,用于确定用户设备接收数据包的速率;
[0102]数量降低单元232,用于若所述第一链路上一次推送所述推送服务器所获取的数据包的速率,大于用户设备接收数据包的速率,且差值符合预定条件,则降低第一链路下一次所推送的数据包数量。
[0103]可选的,推送服务器可将用户设备所推送的消息推送至目标设备;对应的,一个所述推送周期为一个设定的时间段;图11示出了上一推送信息确定模块100的另一种可选结构,参照图11,上一推送信息确定模块100可以包括:
[0104]上一推送数量确定单元120,用于确定上一设定的时间段内,所述第一链路推送的数据包的数量。
[0105]可选的,图12示出了本发明实施例提供的调整模块200的又一种可选结构,参照图12,调整模块200可以包括:
[0106]第三速率计算单元240,用于根据所述数量与所述设定的时间段,计算所述第一链路在上一设定的时间段内推送数据包的速率;
[0107]数量提高单元241,用于若所述第一链路在上一设定的时间段内推送数据包的速率,高于设定的正常数据包推送速率,则提高所述第一链路在下一设定的时间段内的数据包推送数量。
[0108]可选的,所提升的推送速率不应大于推送上限速率;若在提高速率后,下一设定的时间段内实际的数据包推送速率反而减小,则本发明实施例还可再降低速率,通过如此反复操作,使得推送数据包的速率,在高于设定的正常数据包推送速率时,能够使得推送数据包的速率尽量的最大化优化;若第一链路在上一设定时间段内推送数据包的速率,低于设定推送下限速率,则本发明实施例可对所述第一链路进行屏蔽;若第一链路在上一设定时间段内推送数据包的速率,介于推送下限速率与正常数据包推送速率之间,则本发明实施例可保持推送速率不变,或在下一设定的时间段降低推送速率,以减少丢包和延迟情况。
[0109]可选的,图13示出了本发明实施例提供的消息推送装置的另一结构框图,结合图6和图13所示,该装置还可以包括:
[0110]速率计算模块400,用于根据所述上一推送周期所对应的数据包推送数量及时间,计算所述第一链路上一次推送所述推送服务器所获取的数据包的速率;
[0111]屏蔽模块500,用于若所计算的数据包推送速率低于设定推送下限速率,则对所述第一链路进行屏蔽;
[0112]转发模块600,用于确定所述消息中携带的推送请求对应的请求速率范围,若所计算的数据包推送速率未处于所述请求速率范围,将所述消息转发至其他链路进行推送。
[0113]本发明实施例还提供一种推送服务器,包括上述所述的消息推送装置。
[0114]本发明实施例提供的推送服务器,通过反映链路的质量情况的上一推送周期所对应的数据包推送数量及时间,对下一推送周期所推送的数据包数量进行调整,可实现链路质量变差时,链路在下一推送周期所推送的数据包的数量减少,达到减少数据包丢包,降低推送延迟,提高推送质量的目的。
[0115]图14为本发明实施例提供的推送服务器的结构框图,参照图14,该推送服务器可以包括:处理器I,通信接口 2,存储器3和通信总线4 ;
[0116]其中处理器1、通信接口 2、存储器3通过通信总线4完成相互间的通信;
[0117]可选的,通信接口 2可以为通信模块的接口,如GSM模块的接口 ;
[0118]处理器I,用于执行程序;
[0119]存储器3,用于存放程序;
[0120]程序可以包括程序代码,所述程序代码包括计算机操作指令。
[0121]处理器I可能是一个中央处理器CPU,或者是特定集成电路ASIC(Applicat1nSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0122]存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
[0123]其中,程序可具体用于:
[0124]在进行消息推送的过程中,确定推送服务器的第一链路在上一推送周期所对应的数据包推送数量及时间,所述第一链路为所述推送服务器的任一链路;
[0125]根据所述上一推送周期所对应的数据包推送数量及时间,调整所述第一链路在下一推送周期所推送的数据包数量;
[0126]控制所述第一链路在下一推送周期,推送与调整后的所述数据包数量对应的数据包。
[0127]本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0128]专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能宄竟以硬件还是软件方式来执行,取
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1