本发明涉及信息技术领域,特别是一种短信高效发送方法及跨省短信高效发送方法。
背景技术:
大数据时代,数据存储越来越大,网购用户越来越多。商家为了给与客户及时的关怀,优惠活动信息发送短信给与顾客。顾客基数的膨胀,让短信出口速度一度成为了瓶颈。短信的延迟代表着一些客户可能错过活动,甚至缺少被重视的感觉。为了缓解解决这个问题,对系统短信发送技术进行大改造优化,增加分布式缓存,利用多服务器负载均衡,多层次拆解数据等技术。只有提高了短信出口的速度才能有效的避免后续的通道拥堵才可快速送达。
技术实现要素:
本发明的目的在于提供一种短信高效发送方法及跨省短信高效发送方法,以解决上述问题。
为实现上述技术目的,达到上述技术效果,本发明公开了一种短信高效发送方法,包括了以下步骤:
数据分配:根据发送短信的数据数量简易核算统计,均衡分配到各个短信发送服务器;
数据读取:对于短信数据小于1万条,进行单线程读取录入,对于短信数据大于等于1万条,进行多线程分批次的读取录入;
数据拆分:根据发送人数数量进行任务大小分类,小任务直接进入数据使用步骤,大任务优先进行表结构拆分,然后进入数据使用步骤;
数据使用:对于小任务采用共用一个表结构进行任务读取,对于大任务则按照被拆分的独立表结构进行任务读取,其中,大任务从独立表结构读取数据到内存进行列表的读取和操作,任务完成后将该任务从列表中移除,并将内存释放。
其中,数据分配中短信的数据数量简易核算统计包括以下步骤:
步骤1:按服务器ip进行分组,并统计各组中未完成的任务数量;
步骤2:将新产生的任务添加最少未完成任务的ip组别;
步骤3:根据ip组别内新添加的任务提交到不同的服务器。
其中,数据拆分步骤中将发送人数小于1万人的任务视为小任务,将发送人数大于1万人的任务视为大任务。
优选的,还包括有数据整合,数据整合在完成数据使用后进行,具体步骤为:
错误数据过筛:对数据进行手机号码合法性的判断及在系统中重复发送、黑名单、退订因素的筛选;
运营商打标:将筛选过的数据根据运营商号段进行三大运营商打标;
省份打标:将通过运营商打标的数据再根据省份号段进行省份打标。
本发明还公开了一种短信高效的跨省发送方法,包括了上述的发送方法,还包括以下步骤:
步骤s1:开启分省短信通道和普通短信通道,并获取相应类型的短信数据;
步骤s2:读取短信数据的运营商打标结果,将分省短信和普通短信按照不同运营商进行分类;
步骤s3:读取步骤s2的分类结果,进一步读取短信数据中的省份打标结果,按顺序发送各个运营商的分省短信和普通短信,其中每个运营商均采用独立线程并发进行发送。
本发明具有以下有益效果:
1.本发明通过流程优化设计,针对短信发送任务的大小,采用独立制表或共用制表的方式进行分类处理,经过分类处理的短信,可以根据服务器的利用程度进行合理分配。
2.经过合理设计的发送方法,可以推广到跨省短信信息的快速发送当中,通过阅读短信任务的打标结果,可以快速的进行短信的定向发送,提高跨省短信发送效率。
附图说明
图1为本发明的高效发送示意图。
图2为本发明的高效跨省发送示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。
实施例1
如图1所示,本发明公开了一种短信高效发送方法,包括了以下步骤:
数据分配:根据发送短信的数据数量简易核算统计,均衡分配到各个短信发送服务器;
数据读取:对于短信数据小于1万条,进行单线程读取录入,对于短信数据大于等于1万条,进行多线程分批次的读取录入;
数据拆分:根据发送人数数量进行任务大小分类,小任务直接进入数据使用步骤,大任务优先进行表结构拆分,然后进入数据使用步骤;
数据使用:对于小任务采用共用一个表结构进行任务读取,对于大任务则按照被拆分的独立表结构进行任务读取,其中,大任务从独立表结构读取数据到内存进行列表的读取和操作,任务完成后将该任务从列表中移除,并将内存释放。
数据整合:
错误数据过筛:对数据进行手机号码合法性的判断及在系统中重复发送、黑名单、退订因素的筛选;
运营商打标:将筛选过的数据根据运营商号段进行三大运营商打标;
省份打标:将通过运营商打标的数据再根据省份号段进行省份打标。
其中,数据分配中短信的数据数量简易核算统计包括以下步骤:
步骤1:按服务器ip进行分组,并统计各组中未完成的任务数量;
步骤2:将新产生的任务添加最少未完成任务的ip组别;
步骤3:根据ip组别内新添加的任务提交到不同的服务器。
其中,数据拆分步骤中将发送人数小于1万人的任务视为小任务,将发送人数大于1万人的任务视为大任务。
实施例2
如图2所示,本发明还公开了一种短信高效的跨省发送方法,包括了上述的发送方法,还包括以下步骤:
步骤s1:开启分省短信通道和普通短信通道,并获取相应类型的短信数据;
步骤s2:读取短信数据的运营商打标结果,将分省短信和普通短信按照不同运营商进行分类;
步骤s3:读取步骤s2的分类结果,进一步读取短信数据中的省份打标结果,按顺序发送各个运营商的分省短信和普通短信,其中每个运营商均采用独立线程并发进行发送。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。