CN106028292A - 一种发送短信的通道分配方法及*** - Google Patents
一种发送短信的通道分配方法及*** Download PDFInfo
- Publication number
- CN106028292A CN106028292A CN201610294333.9A CN201610294333A CN106028292A CN 106028292 A CN106028292 A CN 106028292A CN 201610294333 A CN201610294333 A CN 201610294333A CN 106028292 A CN106028292 A CN 106028292A
- Authority
- CN
- China
- Prior art keywords
- short message
- note
- sending
- channel
- allocation list
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
- H04W4/14—Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/18—Service support devices; Network management devices
- H04W88/184—Messaging devices, e.g. message centre
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种发送短信的通道分配方法及***,其中方法包括:步骤1:提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;步骤2:配置配置表的相关信息;步骤3:读取配置表,根据配置表中的相关信息fork出多个进程;步骤4:将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。本发明的维护频率很低,也就是配置数据数量一旦形成基本不需要再维护,除非有新增的短信通道表。提高短信通道发送短信能力利用率;不影响正常业务短信的推送;将待发送数据放入中间表后,既不需要人工干预,减少人为操作;可以设置批量短信发送时间。
Description
技术领域
本发明涉及一种发送短信的通道分配方法及***,属于计算机应用软件领域。
背景技术
现有移动NGBOSS***,遇紧急事件,需要推送应急(提醒/预警)短信。由于实时性要求比较高,***必须保证短时间内完成为全省用户(活跃用于约2000万)推送短信。
通常,移动NGBOSS***,共建有11个短信通道(7个使用中,4个备用)平时用于发送业务受理短信,推送提醒/预警短信时,需充分利用短信通道推送短信能力。
发明内容
本发明所要解决的技术问题是为能够保证短时间内推送大量短信,并充分利用短信通道推送短信能力,使得具有发送能力的短信通道满负荷工作;提供一种发送短信的通道分配方法及***。
本发明解决上述技术问题的技术方案如下:一种发送短信的通道分配方法,具体包括以下步骤:
步骤1:提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;
步骤2:配置配置表的相关信息;
步骤3:读取配置表,根据配置表中的相关信息fork出多个进程;
步骤4:将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。
其中,fork()函数是Linux***函数,通过***调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事情,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。
本发明的有益效果是:维护的频率很低,也就是配置数据数量一旦形成基本不需要再维护,除非有新增的短信通道表。提高短信通道发送短信能力利用率;不影响正常业务短信的推送;将待发送数据放入中间表后,既不需要人工干预,减少人为操作;可以设置批量短信发送时间。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述配置表的相关信息包括:短信通道表名、每次***短信条数信息、等待时间信息、短信发送开始时间、短信发送结束时间和积压阀值信息。
进一步,所述步骤3中根据配置表中每次***短信条数信息fork出对应短信条数的多个进程。
进一步,每个所述进程读取短信信息时,按照“mod(commod_id,配置表行数)=进程序列”进行提取。
其中,mod(n,p)运算,既求余运算,是在整数运算中求一个整数n除以另外一个整数p的余数的运算。此处的“mod(command_id,配置表行数)=进程序列”的表述,是表示假定在存储短信信息表中,每一条数据都有一个唯一的command_id来标识,可以理解为数字类型的唯一索引。(另外,不是必须使用comman_id这个名称,可以使用任意的能够代表此含义的名称,例如:sequence、serial等等)。用“command_id”对“配置表行数”进行取余,余数等于“进程序列”的对应的一条数据,分配给“进程序列”代表的进程进行处理。例如:command_id为10的一条数据,“配置表行数为3”,那么通过此表达式的运算,这条数据将分配给进程序列号为1的进程处理。
进一步,步骤3和步骤4之间还包括步骤a;
步骤a:判断短信通道表当前积压值是否大于积压阀值,如果大于,按照配置表中的等待时间执行等待,循环执行步骤a;否则,执行步骤4。
采用上述进一步方案的有益效果是,如果当前积压值大于积压阀值,按照配置表中的等待时间等待,避免了因为过多的短信信息堆积在通道表中,造成通道负荷过载,并保证重复利用短信通道的推送短信能力。
进一步,所述步骤a和步骤4之间还包括步骤b;
步骤b:判断当前时间是否在短信发送开始时间与短信发送结束时间之间,如果是,执行步骤4;否则,按照配置表中的等待时间执行等待,循环执行步骤b。
本发明解决上述技术问题的技术方案如下:一种发送短信的通道分配***,包括短信接收模块、配置模块、进程模块和发送模块;
所述短信接收模块用于提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;
所述配置模块用于配置配置表的相关信息;
所述进程模块用于读取配置表,根据配置表中的相关信息fork分叉出多个进程;
所述发送模块用于将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。
本发明的有益效果是:维护的频率很低,也就是配置数据数量一旦形成基本不需要再维护,除非有新增的短信通道表。提高短信通道发送短信能力利用率;不影响正常业务短信的推送;将待发送数据放入中间表后,既不需要人工干预,减少人为操作;可以设置批量短信发送时间。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述配置表的相关信息包括:短信通道表名、每次***短信条数信息、等待时间信息、短信发送开始时间、短信发送结束时间和积压阀值信息。
进一步,所述进程模块中根据配置表中每次***短信条数信息fork出对应短信条数的多个进程。
进一步,每个所述进程读取短信信息时,按照按照“mod(commod_id,配置表行数)=进程序列”进行提取进行提取。
附图说明
图1为本发明实施例1所述的一种发送短信的通道分配方法流程图;
图2为本发明实施例1所述的一种发送短信的通道分配***结构框图。
附图中,各标号所代表的部件列表如下:
1、短信接收模块,2、配置模块,3、进程模块,4、发送模块。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,为本发明实施例1所述的一种发送短信的通道分配方法,具体包括以下步骤:
步骤1:提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;
步骤2:配置配置表的相关信息;
步骤3:读取配置表,根据配置表中的相关信息fork出多个进程;
步骤4:将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。
实施例2所述的一种发送短信的通道分配方法,在实施例1的基础上,所述配置表的相关信息包括:短信通道表名、每次***短信条数信息、等待时间信息、短信发送开始时间、短信发送结束时间和积压阀值信息。
实施例3所述的一种发送短信的通道分配方法,在实施例2的基础上,所述步骤3中根据配置表中每次***短信条数信息fork出对应短信条数的多个进程。
实施例4所述的一种发送短信的通道分配方法,在实施例3的基础上,每个所述进程读取短信信息时,按照按照“mod(commod_id,配置表行数)=进程序列”进行提取。
实施例5所述的一种发送短信的通道分配方法,在实施例2-4任一项的基础上,步骤3和步骤4之间还包括步骤a;
步骤a:判断短信通道表当前积压值是否大于积压阀值,如果大于,按照配置表中的等待时间执行等待,循环执行步骤a;否则,执行步骤4。
实施例6所述的一种发送短信的通道分配方法,在实施例2-5任一项的基础上,所述步骤a和步骤4之间还包括步骤b;
步骤b:判断当前时间是否在短信发送开始时间与短信发送结束时间之间,如果是,执行步骤4;否则,按照配置表中的等待时间执行等待,循环执行步骤b。
如图2所示,为本发明实施例1所述的一种发送短信的通道分配***,包括短信接收模块1、配置模块2、进程模块3和发送模块4;
所述短信接收模块1用于提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;
所述配置模块2用于配置配置表的相关信息;
所述进程模块3用于读取配置表,根据配置表中的相关信息fork分叉出多个进程;
所述发送模块4用于将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。
实施例2所述的一种发送短信的通道分配***,在实施例1的基础上,所述配置表的相关信息包括:短信通道表名、每次***短信条数信息、等待时间信息、短信发送开始时间、短信发送结束时间和积压阀值信息。
实施例3所述的一种发送短信的通道分配***,在实施例2的基础上,所述进程模块中根据配置表中每次***短信条数信息fork出对应短信条数的多个进程。
实施例4所述的一种发送短信的通道分配***,在实施例3的基础上,每个所述进程读取短信信息时,按照按照“mod(commod_id,配置表行数)=进程序列”进行提取。
本发明具体示例所述的方法包括以下步骤:
1.提取目标用户,连同短信语一同***到中间表。
2.配置配置表,配置内容包括:短信通道表名、每次***短信条数、等待时间(s)、短信发送开始时间(h)、短信发送结束时间(h)、积压阀值。
3.启动后台进程,处理数据。
处理数据:
读取配置表数据,根据配置表目前配置的条数fork出n个进程,每个进程提取数据时按照mod(commod_id,配置表行数)=进程序列进行提取,防止重复发送。
每次***短信通道表前需要判断当前短信通道表积压值,如果超过积压阀值则进入等待,等待时长从配置表中获得。
每次循环判断当前时间是否在开始结束时间之内,如果不在范围内则进入等待,等待时长从配置表中获得。
业务办理类短信优先级高,需要将应急(提醒/预警)短信级别设置比业务办理类短信低。
1、导入批量数据:
Insert into DBCUSTADM.WBATCHSMSSENDTMP
(IN_ACCEPT,PHONE_NO,MSG)
Values
(111,'13888888888','这是一条测试用的短信,测试啊测试啊测试啊');(解释:推送的短信内容是“这是一条测试用的短信,测试啊测试啊测试啊”)
注释:其中111是流水,实际操作时,要填写不重复的流水。
2、写配置表:
Insert into DBCUSTADM.SBATCHSMSSENDCFG
(SMS_ID,TABLE_NAME,WAIT_TIME,INSERT_NUM,BEGIN_HOUR,END_HOUR,OVER_STOCK)
Values
(1,'wcommonshortmsg00',60,2,0,14,300);
3、登陆到主机。启动程序BatchSmsSend;
4、通过上述流程即可完成本发明说要实现的目的。
注:数据处理完毕之后,程序自动停止。下次录入数据之后,再启动。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种发送短信的通道分配方法,其特征在于,具体包括以下步骤:
步骤1:提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;
步骤2:配置配置表的相关信息;
步骤3:读取配置表,根据配置表中的相关信息fork出多个进程;
步骤4:将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。
2.根据权利要求1所述的一种发送短信的通道分配方法,其特征在于,所述配置表的相关信息包括:短信通道表名、每次***短信条数信息、等待时间信息、短信发送开始时间、短信发送结束时间和积压阀值信息。
3.根据权利要求2所述的一种发送短信的通道分配方法,其特征在于,所述步骤3中根据配置表中每次***短信条数信息fork出对应短信条数的多个进程。
4.根据权利要求3所述的一种发送短信的通道分配方法,其特征在于,每个所述进程读取短信信息时,按照“mod(commod_id,配置表行数)=进程序列”进行提取。
5.根据权利要求2所述的一种发送短信的通道分配方法,其特征在于,步骤3和步骤4之间还包括步骤a;
步骤a:判断短信通道表当前积压值是否大于积压阀值,如果大于,按照配置表中的等待时间执行等待,循环执行步骤a;否则,执行步骤4。
6.根据权利要求5所述的一种发送短信的通道分配方法,其特征在于,所述步骤a和步骤4之间还包括步骤b;
步骤b:判断当前时间是否在短信发送开始时间与短信发送结束时间之间,如果是,执行步骤4;否则,按照配置表中的等待时间执行等待,循环执行步骤b。
7.一种发送短信的通道分配***,其特征在于,包括短信接收模块、配置模块、进程模块和发送模块;
所述短信接收模块用于提取目标用户,接收目标用户发送的多个短信信息,并将所有短信信息***到中间表;
所述配置模块用于配置配置表的相关信息;
所述进程模块用于读取配置表,根据配置表中的相关信息fork出多个进程;
所述发送模块用于将中间表中的每个短信信息分别通过一个进程***短信通道表,结束。
8.根据权利要求7所述的一种发送短信的通道分配***,其特征在于,所述配置表的相关信息包括:短信通道表名、每次***短信条数信息、等待时间信息、短信发送开始时间、短信发送结束时间和积压阀值信息。
9.根据权利要求8所述的一种发送短信的通道分配***,其特征在于,所述进程模块中根据配置表中每次***短信条数信息fork出对应短信条数的多个进程。
10.根据权利要求9所述的一种发送短信的通道分配***,其特征在于,每个所述进程读取短信信息时,按照按照“mod(commod_id,配置表行数)=进程序列”进行提取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610294333.9A CN106028292B (zh) | 2016-05-05 | 2016-05-05 | 一种发送短信的通道分配方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610294333.9A CN106028292B (zh) | 2016-05-05 | 2016-05-05 | 一种发送短信的通道分配方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106028292A true CN106028292A (zh) | 2016-10-12 |
CN106028292B CN106028292B (zh) | 2019-10-22 |
Family
ID=57081192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610294333.9A Active CN106028292B (zh) | 2016-05-05 | 2016-05-05 | 一种发送短信的通道分配方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106028292B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108513271A (zh) * | 2018-06-22 | 2018-09-07 | 武汉斑马快跑科技有限公司 | 基于多个短信通道的短信分发方法和设备 |
CN111556451A (zh) * | 2020-04-23 | 2020-08-18 | 北京思特奇信息技术股份有限公司 | 一种***管理方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102291686A (zh) * | 2011-09-09 | 2011-12-21 | 华为软件技术有限公司 | 应急***方法及***、集中控制中心、***器 |
US20120236779A1 (en) * | 2009-12-01 | 2012-09-20 | Samsung Electronics Co. Ltd. | Apparatus and method for reliably and dynamically transmitting group information via a wireless multicast or broadcast channel |
CN103391206A (zh) * | 2012-05-07 | 2013-11-13 | ***通信集团公司 | 一种任务调度方法及其装置 |
CN103534978A (zh) * | 2013-04-07 | 2014-01-22 | 华为技术有限公司 | 一种信息群发方法及设备 |
-
2016
- 2016-05-05 CN CN201610294333.9A patent/CN106028292B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120236779A1 (en) * | 2009-12-01 | 2012-09-20 | Samsung Electronics Co. Ltd. | Apparatus and method for reliably and dynamically transmitting group information via a wireless multicast or broadcast channel |
CN102291686A (zh) * | 2011-09-09 | 2011-12-21 | 华为软件技术有限公司 | 应急***方法及***、集中控制中心、***器 |
CN103391206A (zh) * | 2012-05-07 | 2013-11-13 | ***通信集团公司 | 一种任务调度方法及其装置 |
CN103534978A (zh) * | 2013-04-07 | 2014-01-22 | 华为技术有限公司 | 一种信息群发方法及设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108513271A (zh) * | 2018-06-22 | 2018-09-07 | 武汉斑马快跑科技有限公司 | 基于多个短信通道的短信分发方法和设备 |
CN108513271B (zh) * | 2018-06-22 | 2021-06-25 | 武汉斑马快跑科技有限公司 | 基于多个短信通道的短信分发方法和设备 |
CN111556451A (zh) * | 2020-04-23 | 2020-08-18 | 北京思特奇信息技术股份有限公司 | 一种***管理方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN106028292B (zh) | 2019-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104679851B (zh) | 一种数据删除方法及终端 | |
CN102136967B (zh) | 一种业务状态管理方法、装置和*** | |
CN102929961A (zh) | 基于构建快速数据分级通道的数据处理方法及其装置 | |
CN110035514B (zh) | 确定传输机会的方法及装置、存储介质、电子装置 | |
CN101137133B (zh) | 一种集群***中群组信息的更新方法及装置 | |
CN103647870A (zh) | 一种终端及终端表情显示方法 | |
CN103428184A (zh) | 通讯报文的转换方法及*** | |
CN107870982A (zh) | 数据处理方法、***和计算机可读存储介质 | |
CN106028292A (zh) | 一种发送短信的通道分配方法及*** | |
CN104699795A (zh) | 一种推送视频的方法及装置 | |
CN105813037B (zh) | 短信并发业务处理方法及装置 | |
CN107094085B (zh) | 一种信令传送方法及装置 | |
CN102333280A (zh) | 一种业务密钥更新的方法、***及业务处理服务器 | |
CN103092768B (zh) | 一种应用***中数据处理的方法及装置 | |
CN104767589B (zh) | 一种信息发送方法及装置 | |
CN103299298B (zh) | 处理业务的方法和*** | |
CN106354493B (zh) | 一种解决传统软件开发痛点的开发模式的实现方法 | |
CN109067864B (zh) | 通知消息推送方法、装置及电子设备 | |
CN107231284B (zh) | 一种消息的发送方法和终端设备 | |
CN111367916A (zh) | 一种数据存储方法及装置 | |
CN102781046A (zh) | 业务服务质量保障方法及运营服务*** | |
CN103747484A (zh) | 一种rim流程***信息处理方法和服务节点设备 | |
CN102129433B (zh) | 一种信息的排序方法和设备 | |
CN114416407B (zh) | 一种实时数据的乱序修复***、方法及计算机设备 | |
CN103260134B (zh) | 集群通信***中的群组呼叫实现方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |