一种实现短信下行压力均衡的方法及系统技术方案

技术编号:12587046 阅读:119 留言:0更新日期:2015-12-24 03:46
本发明专利技术公开了一种实现短信下行压力均衡的方法及系统,其中,所述方法包括:业务平台从外部获取数据并存放于数据队列中;线程读取数据队列中的数据并进行校验;当校验通过后,按照预定路由算法对数据进行第一次数据均衡分流,并将分流后的数据存储于对应的数据中间表中;根据优先级从每一张数据中间表中读取待发送数据,选择与其匹配的短信接入号,并通过该短信接入号将待发送数据发送给短信网关。通过本发明专利技术提供的方法,能够解决每个短信接入号短信下行的压力均衡问题,通过路由算法对数据进行两次分流,选择不同的短信接入号进行短信的下发,提升了大数据量下发业务的支撑和效率的提高,减少了下发所用的时间。

【技术实现步骤摘要】

本专利技术涉及数据传输
,具体涉及一种实现短信下行压力均衡的方法及系统
技术介绍
对于运营商来言,很多营销信息、提醒信息和验证码服务信息都会通过短信通道下发信息来提示用户,近年来除了点对点短信外,出现了更多的内容提供商通过运营商的短信通道来给用户下发短信的模式,下发的网元有:发送数据源(业务平台)到短信网关再到短信中心最后下发到用户手中,用户可以通过手机短信实时的获取到自己的消费信息和记录,甚至可以通过积分兑换实现购物需要,那么实时的验证码和密码服务起到了至关重要的作用。所以短信发送的及时性和准确性在用户体验方面起到了越来越重要的作用。参见图1,现有技术方案从业务平台到短信网关,每条短信都是从固定的短信接入号、固定的连接进行下发。当某一个连接数据量较大时,就会出现短信的积压,短信延迟发送,而其他的连接却是空闲,造成很大的资源浪费,也不利于用户体验的提升。已有技术方案简述如下:I)来自各种系统、各种接口的数据校验通过后,首先散列到磁盘的相应目录中由后续的数据处理系统进行处理;2)数据处理系统根据配置的目录扫描磁盘目录下的待发送数据,组织成数据包发送到网关,最后信息由网关发送到短信中心。从现有技术方案中可以看出分析进程根据数据的优先级将数据放到不同的待发送目录下,发送进程扫描到待发送文件,根据短信接入号的不同放到不同的连接池中,采用固定的短信接入号发送至短信网关,实现了简单的优先级控制,但是无法实现每个短信接入号的下行压力均衡。
技术实现思路
本专利技术所要解决的技术问题是提供一种实现短信下行压力均衡的方法及系统,解决了每个短信接入号短信下行的压力均衡问题,提高了短信发送的效率,也实现了短信接入好的充分利用。本专利技术解决上述技术问题的技术方案如下:—方面,本专利技术提供了一种实现短信下行压力均衡的方法,所述方法包括:S1、业务平台从外部获取数据并将该数据存放于数据队列中;S2、线程读取所述数据队列中的数据并对该数据进行数据校验;S3、当数据校验通过后,按照第一预定路由算法对所述数据进行第一次数据均衡分流,并将分流后的数据存储于对应的数据中间表中,形成待发送数据;S4、根据所述待发送数据的优先级从每一张数据中间表中读取待发送数据,并按照第二预定路由算法选择与该待发送数据匹配的短信接入号,并通过所述短信接入号将待发送数据发送给短信网关。另一方面,本专利技术提供了一种实现短信下行压力均衡的系统,所述系统包括:数据获取模块,用于从外部获取数据并将该数据存放于数据队列中;数据读取模块,用于线程采用其读取所述数据队列中的数据;数据校验模块,用于对所述读取的数据进行数据校验;第一次数据分流模块,用于当数据校验通过后,按照第一预定路由算法对所述数据进行第一次数据均衡分流;第一存储模块,用于将分流后的数据存储于对应的数据中间表中,形成待发送数据;第二次数据分流模块,用于根据待发送数据的优先级从每一张数据中间表中读取待发送数据,并按照第二预定路由算法选择与该待发送数据匹配的短信接入号;数据发送模块,用于通过所述短信接入号将待发送数据发送给短信网关。本专利技术提供的一种实现短信下行压力均衡的方法及系统,业务平台将从外部获取的数据首先存放于数据队列中,然后采用线程来读取数据队列中的数据,经过第一次数据均衡分流后才将分流后的数据存储于本地数据库的中间表中,最后将每张数据中间表中的数据进行第二次均衡分流,选择匹配的短信接入号将待发送数据发送给短信网关。其中,业务平台将从外部获取的数据首先存放于数据队列中,并引入线程来读取数据队列中的数据,达到数据缓存的效果,避免大量数据发送时频繁的读取数据库,造成数据库访问效率的下降,而访问内存中的数据队列提高了数据的处理效率;对待发送的数据进行两次均衡分流,并选择不同的短信接入号、不同的连接进行短信的下发,相比现有技术通过固定的短信接入号、固定的连接进行短信的下发,解决了每个短信接入号短信下行压力的均衡问题,提高了短信下发的效率,也实现了短信接入号的充分利用。【附图说明】图1为现有技术短信下发的流程图;图2为本专利技术实施例一的一种实现短信下行压力均衡的方法流程图;图3为本专利技术实施例一的整个实现过程流程图;图4为本专利技术实施例一中第一次数据分流均衡示意图;图5为本专利技术实施例一中业务平台将数据发送给短信网关的示意图;图6为本专利技术实施例二的一种实现短信下行压力均衡的系统示意图。【具体实施方式】以下结合附图对本专利技术的原理和特征进行描述,所举实例只用于解释本专利技术,并非用于限定本专利技术的范围。实施例一、一种实现短信下行压力均衡的方法。下面结合图2-图4对本实施例提供的方法进行详细说明。参见图2,S1、业务平台从外部获取数据并将该数据存放于数据队列中。具体的,参见图3,业务平台通过各种接口从外部各种系统获取可能需要向用户发送的数据,由于内存中的数据队列能提高数据的处理能力,比如,在读取数据的时候速度快,因此业务平台引入数据队列,将从外部获取的各种数据存放于数据队列中,达到数据缓存的效果,保证了外围系统的数据不出现积压现象。S2、线程读取所述数据队列中的数据并对该数据进行数据校验。具体的,参见图4,当业务平台将从外部获取的数据存放于数据队列后,业务平台引入了处理线性池,由线性池中的子线程来读取数据队列中的数据,其中,数据队列中的每条数据均由线性池中的一个子线程来单独处理,数据量大时,实现了数据的异步处理,提高了业务平台的数据处理效率。需要说明的是,在线程从数据队列中读取数据时,为了提高数据读取的速度,避免线程每次读取的数据过多而影响数据读取的效率,因此,本实施例设定线程每次从数据队列中读取数据的阈值数据量,每一次线程最多只能从数据队列中读取阈值数据量的数据。线程读取数据队列中的数据后,对读取的数据进行数据校验和重新封装等操作。本实施例中的数据校验包括是否为短信消息校验,比如,该条数据是否为短信消息;免打扰时间校验,比如是否在用户的免打扰时间;黑/白名单校验,比如,数据对应的用户为黑名单;敏感词过滤,比如,校验该条数据中是否包含预定的敏感词;优先级校验,比如,该条数据的优先级等。当然,本实施例不限于只对上述这些内容进行校验,也可以对数据进行其它的校验,本实施不作具体限定。本实施例中对每一条数据进行校验,保证了用户收到信息的准确性和及时性,使用户得到更好的服务。S3、当数据校验通过后,按照第一预定路由算法对所述数据进行第一次数据均衡分流,并将分流后的数据存储于对应的数据中间表中,形成待发送数据。具体的,当数据校验通过时,比如,这些数据为短信数据,并且当前时间不是用户的免打扰时间,该用户不为黑名单,且这些数据中没有预定的铭感词或者其中的敏感词已经经过过滤,则按照第一预定的路由算法对这些数据进行第一次数据均衡分流,并且将均衡分流后的数据存储于对应的数据中间表中,经过第一次数据均衡分流后的数据即为待发送数据。其中,每条数据对应有一个用户手机号,即该条数据最终会发送至某一用户手机,本实施例将数据对应的用户手机号的最后一位数字和数据中间表总数量相除取余数,然后将该条数据存储于编号为该余数的数据中间表中,比如,数据中间表有send_Wait_0到send_wait_4五张表,手机的尾号为9,则将该条数据存储于send_wai本文档来自技高网...

【技术保护点】
一种实现短信下行压力均衡的方法,其特征在于,所述方法包括:S1、业务平台从外部获取数据并将该数据存放于数据队列中;S2、线程读取所述数据队列中的数据并对该数据进行数据校验;S3、当数据校验通过后,按照第一预定路由算法对所述数据进行第一次数据均衡分流,并将分流后的数据存储于对应的数据中间表中,形成待发送数据;S4、根据所述待发送数据的优先级从每一张数据中间表中读取待发送数据,并按照第二预定路由算法选择与该待发送数据匹配的短信接入号,并通过所述短信接入号将待发送数据发送给短信网关。

【技术特征摘要】

【专利技术属性】
技术研发人员:张泽斌
申请(专利权)人:北京思特奇信息技术股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1