一种控制报文发送的方法及装置的制造方法

文档序号:9202600阅读:258来源:国知局
一种控制报文发送的方法及装置的制造方法
【技术领域】
[0001] 本发明设及移动通信技术领域,特别设及一种控制报文发送的方法及装置。
【背景技术】
[0002] 由于网关的资源有限,当报文业务量较大的时候,会给网关很大的压力,容易导致 网关响应速度变慢,报文发送失败,甚至导致网关崩溃。现有技术中,向网关发送报文时,对 报文的流控一般采用如下方法;首先将报文保存到队列中,然后每隔一段时间从队列中取 出指定数量的报文进行发送,之后休眠。例如,一个每秒发送500条报文的系统,从队列中 取出500条报文发送完成后,判断当前时间距报文开始发送的时间是否超过1秒,如果超 过,则再从队列中取出500条报文发送给网关;否则休眠,休眠的时间为直到距报文开始发 送的时间达到1秒钟。
[0003] 然而,现有的报文流控存在W下问题:由于分时间段发送报文,只能保证当前时 间段报文不超速,却无法保证在整个发送过程中任意时间段内报文均不超速。例如,在 15:00:00秒到15:00:01秒之间每100毫秒发送50条报文,然后在15:00:01-15:00:02秒 的开始的前500毫秒发送了 500条,然后在15:00:01-15:00:02秒的后500毫秒休眠。可 W看出,在两个时间段15:00:00-15:00:01秒和15:00:01-15:00:02秒内均未超速,但在中 间时间段15:00:00. 500-15:00:01. 500的该1秒内,发送了 750条报文,已严重超速。
[0004] 可W看出,采用现有的报文流控,无法保证任意时间段内报文的发送速度均不超 速,容易导致网关响应速度变慢,报文发送失败,甚至导致网关崩溃。

【发明内容】

[0005] 本发明实施例提供一种控制报文发送的方法及装置,用W解决现有技术中无法保 证任意时间段内报文的发送速度均不超速,容易导致网关响应速度变慢,报文发送失败,甚 至导致网关崩溃的问题。
[0006] 本发明实施例提供一种控制报文发送的方法,包括:
[0007] 获取网关允许的报文发送速度,所述报文发送速度为在第一设定时间内允许发送 N条报文;
[0008] 接收第M条待发送报文,计算当前时间与第M-N条报文的发送时间的差值;其中, M大于N;
[0009] 若所述当前时间与第M-N条报文的发送时间的差值大于或等于所述第一设定时 间,则发送所述第M条待发送报文;若所述当前时间与第M-N条报文的发送时间的差值小于 所述第一设定时间,则控制所述第M条待发送报文的发送时间。
[0010] 较佳的,若所述当前时间与第M-N条报文的发送时间的差值小于所述第一设定时 间,则控制所述第M条待发送报文的发送时间,具体为:
[0011] 等待第一时长后,发送所述第M条待发送报文;所述第一时长大于或等于所述当 前时间与第M-N条报文的发送时间的差值。
[0012] 较佳的,在获取网关允许的报文发送速度后,还包括:
[0013] 根据所述网关允许的报文发送速度创建数组,所述数组用于存放报文的发送时间 且所述数组的大小与所述网关在第一设定的时间内允许发送的报文数量N相同;
[0014] 在将第M条待发送报文进行发送后,还包括:
[0015] 将所述第M条待发送报文的发送时间覆盖所述第M-N条报文的发送时间。
[0016] 较佳的,接收第N条待发送报文时,计算当前时间与第一条报文的发送时间的差 值,若所述当前时间与第一条报文的发送时间的差值大于或等于所述第一设定时间,则发 送所述第N条待发送报文;若所述当前时间与第一条报文的发送时间的差值小于所述第一 设定时间,则控制所述第N条待发送报文的发送时间。
[0017] 较佳的,在将第M条待发送报文的发送时间覆盖所述第M-N条报文的发送时间后, 还包括:
[001引将所述数组的下标加1 ;
[0019] 若所述数组的下标加1后与N的值相同,则将所述数组的下标置0。
[0020] 本发明实施例还提供一种控制报文发送的装置,包括:
[0021] 获取模块,用于获取网关允许的报文发送速度,所述报文发送速度为在第一设定 时间内允许发送N条报文;
[0022] 接收模块,用于接收第M条待发送报文,计算当前时间与第M-N条报文的发送时间 的差值;其中,M大于N;
[0023] 控制模块,用于在所述当前时间与第M-N条报文的发送时间的差值大于或等于所 述第一设定时间时,发送所述第M条待发送报文;在所述当前时间与第M-N条报文的发送时 间的差值小于所述第一设定时间时,控制所述第M条待发送报文的发送时间。
[0024] 较佳的,所述控制模块,具体用于;在所述当前时间与第M-N条报文的发送时间的 差值小于所述第一设定时间时,控制所述第M条待发送报文的发送时间,具体为:等待第一 时长后,发送所述第M条待发送报文;所述第一时长大于或等于所述当前时间与第M-N条报 文的发送时间的差值。
[00巧]较佳的,所述获取模块,还用于:
[0026] 在获取网关允许的报文发送速度后,根据所述网关允许的报文发送速度创建数 组,所述数组用于存放报文的发送时间且所述数组的大小与所述网关在第一设定的时间内 允许发送的报文数量N相同;
[0027] 所述控制模块,还用于;在将第M条待发送报文进行发送后,指示所述获取模块将 所述第M条待发送报文的发送时间覆盖所述第M-N条报文的发送时间。
[0028] 较佳的,所述接收模块,具体用于:
[0029] 接收第N条待发送报文时,计算当前时间与第一条报文的发送时间的差值;
[0030] 所述控制模块,具体用于:
[0031] 在所述当前时间与第一条报文的发送时间的差值大于或等于所述第一设定时间 时,发送所述第N条待发送报文;在所述当前时间与第一条报文的发送时间的差值小于所 述第一设定时间时,控制所述第N条待发送报文的发送时间。
[0032] 较佳的,所述控制模块,还用于:
[0033] 在将第M条待发送报文的发送时间覆盖所述第M-N条报文的发送时间后,指示所 述获取模块将所述数组的下标加1;
[0034] 若所述数组的下标加1后与N的值相同,则将所述数组的下标置0。
[0035]上述实施例提供的控制报文发送的方法及装置,包括:获取网关允许的报文发送 速度,所述报文发送速度为在第一设定时间内允许发送N条报文;接收第M条待发送报文, 计算当前时间与第M-N条报文的发送时间的差值;其中,M大于N;若所述当前时间与第M-N 条报文的发送时间的差值大于或等于所述第一设定时间,则发送所述第M条待发送报文; 若所述当前时间与第M-N条报文的发送时间的差值小于所述第一设定时间,则控制所述第 M条待发送报文的发送时间。可W看出,通过在接收到第M条待发送报文时,将当前时间与 第M-N条报文的发送时间求差值,并将求得的差值与网关允许的报文发送速度中的第一设 定时间相比较,并在所述差值小于第一设定时间时,控制第M条报文的发送时间,从而能够 保证任意时间段内报文的发送速度均不超速,因此,能够通过控制第M条报文的发送时间, 控制任意时间段内报文的发送速度均不超速W减轻网关的压力,从而避免出现网关响应速 度变慢、报文发送失败、网关崩溃的情况。
【附图说明】
[0036]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可W根据该些附图获得其 他的附图。
[0037] 图1为本发明实施例提供的控制报文发送的方法的流程图;
[003引图2为本发明实施例提供的控制报文发送的装置的结构示意图。
【具体实施方式】
[0039]为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进 一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施 例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的 所有其它实施例,都属于本发明保护的范围。
[0040] 为了节省存储空间,本发明实施例中存储报文的发送时间优先采用数组,但并不 表示仅限于采用数组存储报文的发送时间,即本发明实施例中可W采用任何类型的存储方 式存储报文的发送时间。
[0041] 本发明实施例中没有对报文的类型进行任何形式的限定,在具体实施时,报文可 W是短信,也可W是消息,还可W是其它任何类型的报文。
[0042] 本发明实施例中也没有对网关的类型进行任何限定,在具体实施时,网关可W是 ISMGQnternet化ortMessageGateway,互联网短信网关),也可W是其它任何类型的网 关。
[0043] 图1,为本发明实施例提供的控制报文发送的方法的流程图。如图所示,该方法可 包括:
[0044]S101、获取网关允许的报文发送速度。网关允许的报文发送速度为在第一设定时 间内允许发送N条
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1