CN115460557A - 短信通道资源的调度处理方法和相关产品 - Google Patents
短信通道资源的调度处理方法和相关产品 Download PDFInfo
- Publication number
- CN115460557A CN115460557A CN202211409848.0A CN202211409848A CN115460557A CN 115460557 A CN115460557 A CN 115460557A CN 202211409848 A CN202211409848 A CN 202211409848A CN 115460557 A CN115460557 A CN 115460557A
- Authority
- CN
- China
- Prior art keywords
- short message
- message channel
- channel
- group
- priority
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000012163 sequencing technique Methods 0.000 claims description 58
- 230000002159 abnormal effect Effects 0.000 claims description 27
- 230000009191 jumping Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 7
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 8
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000000126 substance Substances 0.000 description 3
- 230000002265 prevention Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了短信通道资源的调度处理方法和相关产品。一种短信通道资源的调度处理方法应用于短信群发服务系统;短信群发服务系统包括短信群发服务端和应用程序接口端;方法包括:在短信群发服务端中的数据源层获取到由应用程序接口端推送的短信sm1后,短信群发服务端中的服务层从候选短信通道资源池中选定短信通道ch1,并尝试调用短信通道ch1群发短信sm1;若调用短信通道ch1群发短信sm1失败,则重新尝试调用短信通道ch1群发短信sm1;短信通道ch1为候选短信通道资源池中当前优先级最高的短信通道。本申请实施例的方案有利于提高短信群发的成功率和及时性。
Description
技术领域
本申请涉及计算机和互联网相关技术领域,尤其涉及短信通道资源的调度处理方法和相关产品。
背景技术
目前,在很多应用场景下,短信仍然被广泛的应用。营销短信是一种常见的短信,营销短信往往具有群发(批量推送)的特征,当然还存在其他一些有群发短信需要的场景,例如防疫提醒、防灾提醒等等场景下,都有短信群发的需求。短信群发依赖于短信群发服务系统的短信通道,目前很多短信群发服务系统由于缺乏科学的短信通道调度管理机制,使得短信群发的成功率和及时性都不太可控。
发明内容
本申请实施例提供短信通道资源的调度处理方法和相关产品,有利于增强短信群发成功率和及时性的可控性。
本申请第一方面提供一种短信通道资源的调度处理方法,所述方法应用于短信群发服务系统;其中,所述短信群发服务系统包括短信群发服务端和应用程序接口端。
其中,所述短信群发服务端包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的数据源层。
其中,所述方法包括:在所述短信群发服务端中的所述数据源层获取到由所述应用程序接口端推送的短信sm1后,所述短信群发服务端中的所述服务层从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1。
若调用所述短信通道ch1群发所述短信sm1失败,则重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道。
若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。
在一些可能的实施方式中,所述短信sm1被所述应用程序接口端推送到短信队列的队尾,所述短信队列为先入先出队列;被所述应用程序接口端推送到所述短信队列中的所述短信sm1能够被所述短信群发服务端中的所述数据源层获取到;
在所述短信sm1被成功群发之后,所述短信sm1将被所述数据源层从所述短信队列中删除。
在一些可能的实施方式中,所述方法还包括:在从所述候选短信通道资源池中选定短信通道ch2之时,所述服务层将所述短信级失败计数器coun-sm1的计数值清零;在调用所述短信通道ch2或所述短信通道ch1成功的群发所述短信sm1之时,所述服务层将所述短信级失败计数器coun-sm1的计数值清零。
在一些可能的实施方式中,所述方法还包括:
当通道级失败计数器coun-ch1的计数值超过阈值Th2时,所述服务层降低所述短信通道ch1的当前优先级,所述通道级失败计数器coun-ch1用于累计所述短信通道ch1的当前统计周期内短信群发失败次数。
在一些可能的实施方式中,所述方法还包括:当选举重启计数器coun3的计数值超过阈值Th3时,所述服务层对所述候选短信通道资源池中短信通道的优先级进行重新选举;
其中,
当所述短信级失败计数器coun-sm1被清零时,所述选举重启计数器coun3的计数值被加X;当通道级失败计数器coun-ch1被清零时,所述选举重启计数器coun3的计数值被加Y。
在一些可能实施方式中,候选短信通道资源池包括N个短信通道,N为大于1的整数(例如N等于2、3、4、5、10、14、15、19、25等);对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
S1.令i=1。
S2.读取候选短信通道资源池中的第i个短信通道的状态标识位,所述第i个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
S3.判断第i个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤S4。
若否则执行步骤S7。
S4.判断第i个短信通道在当前统计周期t1内的最近tm1小时内是否被成功调用。
若是则执行步骤S5。
若否则执行步骤S6。
S5.将第i个短信通道加入排序集合si1,跳转至步骤S8。
S6.将第i个短信通道加入排序集合si2,跳转至步骤S8。
S7.将第i个短信通道加入排序集合si3,跳转至步骤S8。
S8.判断i是否小于N。
若是则令i=i+1,并返回步骤S2。
若否则执行步骤S9。
S9.针对排序集合si1中的短信通道,按照在当前统计周期t1内的被成功调用次数从多到少的顺序来依次选举短信通道的优先级,排序集合si1中被成功调用次数越多的短信通道选举的优先级越高。
S10.针对排序集合si2中的短信通道,按照在当前统计周期t1内的最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合si2中任意一个短信通道的优先级低于排序集合si1中任意一个短信通道的优先级。
S11.针对排序集合si3中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合si3中任意一个短信通道的优先级低于排序集合si2中任意一个短信通道的优先级。
在一些可能实施方式中,候选短信通道资源池包括N个短信通道,N为大于1的整数(例如N等于2、3、4、5、10、14、15、19、25等);对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
F1.令j=1。
F2.读取候选短信通道资源池中的第j个短信通道的状态标识位,所述第j个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
F3.判断第j个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤F4。
若否则执行步骤F12。
F4.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th4。
若否则执行步骤F5。
若是则执行步骤F8。
F5.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th5,阈值Th5小于阈值Th4。
若是则执行步骤F6。
若否则执行步骤F11。
F6.判断第j个短信通道在当前统计周期t2内的省份级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的省份级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fx个源省份的平均群发成功率。
若否则执行步骤F7。
若是则执行步骤F9。
F7.判断第j个短信通道在当前统计周期t2内的用户级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的用户级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fy个源用户的平均群发成功率。
若是则执行步骤F10。
若否则执行步骤F11。
F8.将第j个短信通道加入排序集合fj1,跳转至步骤F13。
F9.将第j个短信通道加入排序集合fj2,跳转至步骤F13。
F10.将第j个短信通道加入排序集合fj3,跳转至步骤F13。
F11.将第j个短信通道加入排序集合fj4,跳转至步骤F13。
F12.将第j个短信通道加入排序集合fj5,跳转至步骤F13。
F13.判断j是否小于N。
若是则令j=j+1,并返回步骤F2。
若否则执行步骤F13。
F14.针对排序集合fj1中的短信通道,按照在当前统计周期t2内的整体群发成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj1中整体群发成功率越高的短信通道选举的优先级越高。
F15.针对排序集合fj2中的短信通道,按照在当前统计周期t2内的省份级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj2中省份级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj2中任意一个短信通道的优先级,低于排序集合fj1中任意一个短信通道的优先级。
F16.针对排序集合fj3中的短信通道,按照在当前统计周期t2内的用户级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj3中用户级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj3中任意一个短信通道的优先级低于,排序集合fj2中任意一个短信通道的优先级。
F17.针对排序集合fj4中的短信通道,按照当前统计周期t2内最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合fj4中任意一个短信通道的优先级低于排序集合fj3中任意一个短信通道的优先级。
F18.针对排序集合fj5中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合fj5中任意一个短信通道的优先级低于排序集合fj4中任意一个短信通道的优先级。
本申请第二方面提供一种短信群发服务系统,包括短信群发服务端和应用程序接口端;
其中,所述短信群发服务端包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的数据源层;
所述应用程序接口端,用于向所述短信群发服务端推送短信sm1;
所述短信群发服务端中的所述数据源层用于获取应用程序接口端推送的短信sm1;
所述短信群发服务端中的所述服务层,用于在所述短信群发服务端中的所述数据源层获取到由所述应用程序接口端推送的短信sm1后,从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1;
若调用所述短信通道ch1群发所述短信sm1失败,则重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道;
若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。
在一些可能的实施方式中,所述短信sm1被所述应用程序接口端推送到短信队列的队尾,所述短信队列为先入先出队列;被所述应用程序接口端推送到所述短信队列中的所述短信sm1能够被所述短信群发服务端中的所述数据源层获取到;
在所述短信sm1被成功群发之后,所述短信sm1将被所述数据源层从所述短信队列中删除。
在一些可能的实施方式中,所述服务层还用于,在从所述候选短信通道资源池中选定短信通道ch2之时,将所述短信级失败计数器coun-sm1的计数值清零;在调用所述短信通道ch2或所述短信通道ch1成功的群发所述短信sm1之时,将所述短信级失败计数器coun-sm1的计数值清零。
在一些可能的实施方式中,服务层还用于,当通道级失败计数器coun-ch1的计数值超过阈值Th2时,降低短信通道ch1的当前优先级,所述通道级失败计数器coun-ch1用于累计所述短信通道ch1的当前统计周期内短信群发失败次数。
在一些可能的实施方式中,服务层还用于,当选举重启计数器coun3的计数值超过阈值Th3时,对所述候选短信通道资源池中短信通道的优先级进行重新选举;
其中,
当所述短信级失败计数器coun-sm1被清零时,所述选举重启计数器coun3的计数值被加X;当通道级失败计数器coun-ch1被清零时,所述选举重启计数器coun3的计数值被加Y。
其中,X小于或等于Y,阈值Th3大于Y。其中,例如阈值Th3的取值范围可为[10Y,30Y]。例如阈值Th3等于10Y、12Y、15Y、17Y、19Y、26Y、28Y或30Y。
例如X的取值范围可为[0.2Y,Y],例如X等于0.2Y、0.3Y、0.5Y、0.8Y或Y。
在一些可能实施方式中,候选短信通道资源池包括N个短信通道,N为大于1的整数(例如N等于2、3、4、5、10、14、15、19、25等);对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
S1.令i=1。
S2.读取候选短信通道资源池中的第i个短信通道的状态标识位,所述第i个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
S3.判断第i个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤S4。
若否则执行步骤S7。
S4.判断第i个短信通道在当前统计周期t1内的最近tm1小时内是否被成功调用。
若是则执行步骤S5。
若否则执行步骤S6。
S5.将第i个短信通道加入排序集合si1,跳转至步骤S8。
S6.将第i个短信通道加入排序集合si2,跳转至步骤S8。
S7.将第i个短信通道加入排序集合si3,跳转至步骤S8。
S8.判断i是否小于N。
若是则令i=i+1,并返回步骤S2。
若否则执行步骤S9。
S9.针对排序集合si1中的短信通道,按照在当前统计周期t1内的被成功调用次数从多到少的顺序来依次选举短信通道的优先级,排序集合si1中被成功调用次数越多的短信通道选举的优先级越高。
S10.针对排序集合si2中的短信通道,按照在当前统计周期t1内的最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合si2中任意一个短信通道的优先级低于排序集合si1中任意一个短信通道的优先级。
S11.针对排序集合si3中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合si3中任意一个短信通道的优先级低于排序集合si2中任意一个短信通道的优先级。
在一些可能实施方式中,候选短信通道资源池包括N个短信通道,N为大于1的整数(例如N等于2、3、4、5、10、14、15、19、25等);对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
F1.令j=1。
F2.读取候选短信通道资源池中的第j个短信通道的状态标识位,所述第j个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
F3.判断第j个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤F4。
若否则执行步骤F12。
F4.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th4。
若否则执行步骤F5。
若是则执行步骤F8。
F5.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th5,阈值Th5小于阈值Th4。
若是则执行步骤F6。
若否则执行步骤F11。
F6.判断第j个短信通道在当前统计周期t2内的省份级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的省份级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fx个源省份的平均群发成功率。
若否则执行步骤F7。
若是则执行步骤F9。
F7.判断第j个短信通道在当前统计周期t2内的用户级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的用户级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fy个源用户的平均群发成功率;
若是则执行步骤F10。
若否则执行步骤F11。
F8.将第j个短信通道加入排序集合fj1,跳转至步骤F13。
F9.将第j个短信通道加入排序集合fj2,跳转至步骤F13。
F10.将第j个短信通道加入排序集合fj3,跳转至步骤F13。
F11.将第j个短信通道加入排序集合fj4,跳转至步骤F13。
F12.将第j个短信通道加入排序集合fj5,跳转至步骤F13。
F13.判断j是否小于N。
若是则令j=j+1,并返回步骤F2。
若否则执行步骤F13。
F14.针对排序集合fj1中的短信通道,按照在当前统计周期t2内的整体群发成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj1中整体群发成功率越高的短信通道选举的优先级越高。
F15.针对排序集合fj2中的短信通道,按照在当前统计周期t2内的省份级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj2中省份级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj2中任意一个短信通道的优先级,低于排序集合fj1中任意一个短信通道的优先级。
F16.针对排序集合fj3中的短信通道,按照在当前统计周期t2内的用户级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj3中用户级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj3中任意一个短信通道的优先级低于,排序集合fj2中任意一个短信通道的优先级。
F17.针对排序集合fj4中的短信通道,按照当前统计周期t2内最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合fj4中任意一个短信通道的优先级低于排序集合fj3中任意一个短信通道的优先级。
F18.针对排序集合fj5中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合fj5中任意一个短信通道的优先级低于排序集合fj4中任意一个短信通道的优先级。
本申请第三方面提供一种通信设备,包括:处理器和存储器。
处理器用于调用所述存储器中存储的计算机程序,以执行第一方面中由短信群发服务端执行的部分或全部操作。
本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被计算机执行时,能够实现本申请实施例提供的任意一种方法的部分或全部步骤。
本申请第五方面提供一种计算机程序产品,其中,所述计算机程序产品被计算机执行时,能够实现本申请实施例提供的任意一种方法的部分或全部步骤。
附图说明
为了更为清楚地说明本申请实施例中的技术方案,下面将对实施例中所涉及到的一些附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-A是本申请的实施例提供的一种短信群发服务系统的示意图;
图1-B是本申请的实施例提供的一种短信群发服务端的示意图;
图1-C是本申请的实施例提供的一种应用程序接口端的示意图;
图2是本申请的实施例提供的一种短信通道资源的调度处理方法的流程示意图;
图3是本申请的实施例提供的一种短信通道资源池的示意图;
图4是本申请的实施例提供的一种短信通道重新选举的流程示意图;
图5是本申请的实施例提供的一种通信设备的示意图。
具体实施方式
为使本技术领域的人员更好地理解本申请方案,下面将结合本申请的实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请各部分出现的术语“第一”、“第二”和“第三”等是用于区别不同对象,而并非用于描述特定顺序。此外术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备不限定于已列出的步骤或单元,而是可选地还包括未列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
参阅图1-A,图1-A是本申请实施例举例提供的一种短信群发服务系统的架构示意图,其中,短信群发服务系统包括短信群发服务端和应用程序接口端,还可包括管理端。短信群发服务端、应用程序接口端和管理端之间通过网络互联通信。
其中,短信群发服务端用于实现短信群发服务,应用程序接口端用于根据用户需求产生需要群发的短信。管理端可用于对短信群发服务端和应用程序接口端进行策略配置管理。
参见图1-B,短信群发服务端包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的数据源层。其中,运行环境层可用于提供软件运行环境。数据支撑层用于提供服务层运行所依赖的系统数据;数据源层可用于获得服务层需要处理应用数据(包括短信)。
参见图1-C,应用程序接口(API,Application Program Interface)端可包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的网关层、运行于所述网关层之上的应用层。其中,运行环境层可用于提供软件运行环境。数据支撑层可用于提供服务层运行所依赖的系统数据。应用层可用于提供应用交互接口,通过应用交互接口与用户交互应用数据(包括短信)。网关层用于对经过的应用数据(包括短信)进行过滤。服务层可用于安装配置的处理策略对应用数据(包括短信)进行处理。
其中,本申请各方法实施例的方法,可应用于上述举例的短信群发服务系统。
请参阅图2,图2是本申请一个实施例提供的一种短信通道资源的调度处理方法的流程示意图,方法可应用于上述举例的短信群发服务系统。如图2所示,本申请的一个实施例提供的短信通道资源的调度处理方法包括以下内容:
201.在短信群发服务端中的数据源层获取到由所述应用程序接口端推送的短信sm1后,短信群发服务端中的服务层从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1。
202.若调用所述短信通道ch1群发所述短信sm1失败,则短信群发服务端中的服务层重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道。
其中,阈值Th1为正整数,Th1取值范围例如可为[2,5]。例如阈值Th1等于2、3、4或5等。
203.若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则短信群发服务端中的服务层从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。
在一些可能的实施方式中,所述方法还包括:在从所述候选短信通道资源池中选定短信通道ch2之时,短信群发服务端中的服务层将所述短信级失败计数器coun-sm1的计数值清零;在调用所述短信通道ch2或所述短信通道ch1成功的群发所述短信sm1之时,短信群发服务端中服务层将所述短信级失败计数器coun-sm1的计数值清零。
进一步的,若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用短信通道ch2成功群发所述短信sm1,则从候选短信通道资源池中选定短信通道ch3,并尝试调用所述短信通道ch3群发所述短信sm1,所述短信通道ch3为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch2的短信通道。并且可以以此类推,直到调用某个短信通道成功群发所述短信sm1为止。当然,短信群发服务端中的服务层也可以在通过几个短信通道尝试群发短信sm1失败后,放弃群发短信sm1,并可进一步通知应用程序接口端短信sm1群发失败。
在一些可能的实施方式中,所述短信sm1被所述应用程序接口端推送到短信队列的队尾,所述短信队列为先入先出队列;被所述应用程序接口端推送到所述短信队列中的所述短信sm1能够被所述短信群发服务端中的所述数据源层获取到。
在所述短信sm1被成功群发之后,所述短信sm1将被短信群发服务端中的数据源层从所述短信队列中删除。
在一些可能的实施方式中,所述方法还包括:在从所述候选短信通道资源池中选定短信通道ch2之时,所述服务层将所述短信级失败计数器coun-sm1的计数值清零;在调用所述短信通道ch2或所述短信通道ch1成功的群发所述短信sm1之时,所述服务层将所述短信级失败计数器coun-sm1的计数值清零。
在一些可能的实施方式中,所述方法还包括:当通道级失败计数器coun-ch1的计数值超过阈值Th2时,所述服务层降低所述短信通道ch1的当前优先级,所述通道级失败计数器coun-ch1用于累计所述短信通道ch1的当前统计周期内短信群发失败次数。
其中,阈值Th2为正整数,Th2取值范围例如可为[2,10]。例如阈值Th2等于2、3、4、5、6、7、8或9等。
在一些可能的实施方式中,所述方法还包括:当选举重启计数器coun3的计数值超过阈值Th3时,所述服务层对所述候选短信通道资源池中短信通道的优先级进行重新选举。
其中,当所述短信级失败计数器coun-sm1被清零时,所述选举重启计数器coun3的计数值被加X。当通道级失败计数器coun-ch1被清零时,所述选举重启计数器coun3的计数值被加Y。
其中,X小于或等于Y,阈值Th3大于Y。其中,例如阈值Th3的取值范围可为[10Y,30Y]。例如阈值Th3等于10Y、12Y、15Y、17Y、19Y、26Y、28Y或30Y。
例如X的取值范围可为[0.2Y,Y],例如X等于0.2Y、0.3Y、0.5Y、0.8Y或Y。
本实施例方案中,在短信群发服务端中的所述数据源层获取到由所述应用程序接口端推送的短信sm1后,短信群发服务端中的所述服务层从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1;若调用所述短信通道ch1群发所述短信sm1失败,则重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道;若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。上述方案引入科学的管理机制来管理调用短信通道资源池中的短信通道,有利于提高短信群发的成功率和及时性。
参见图3,图3为候选短信通道资源池的示意图。下面以候选短信通道资源池包括N个短信通道为例,举例介绍一些对候选短信通道资源池中短信通道的优先级进行重新选举的可能实施方式。其中,N为大于1的整数(例如N等于2、3、4、5、10、14、19或25等)。
参见图4,在一些可能的实施方式中,对所述候选短信通道资源池中短信通道的优先级进行重新选举可以包括:
S1.令i=1。
S2.读取候选短信通道资源池中的第i个短信通道的状态标识位,所述第i个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
S3.判断第i个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤S4。
若否则执行步骤S7。
S4.判断第i个短信通道在当前统计周期t1内的最近tm1小时内是否被成功调用。tm1大于0.1,例如等于0.1、0.2、0.5、0.8、1、2、3、10或者15等。
若是则执行步骤S5。
若否则执行步骤S6。
S5.将第i个短信通道加入排序集合si1,跳转至步骤S8。
S6.将第i个短信通道加入排序集合si2,跳转至步骤S8。
S7.将第i个短信通道加入排序集合si3,跳转至步骤S8。
S8.判断i是否小于N。
若是则令i=i+1,并返回步骤S2。
若否则执行步骤S9。
S9.针对排序集合si1中的短信通道,按照在当前统计周期t1内的被成功调用次数从多到少的顺序来依次选举短信通道的优先级,排序集合si1中被成功调用次数越多的短信通道选举的优先级越高。
S10.针对排序集合si2中的短信通道,按照在当前统计周期t1内的最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合si2中任意一个短信通道的优先级低于排序集合si1中任意一个短信通道的优先级。
S11.针对排序集合si3中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合si3中任意一个短信通道的优先级低于排序集合si2中任意一个短信通道的优先级。
在另一些可能的实施方式中,对候选短信通道资源池中短信通道的优先级进行重新选举可包括步骤F1-F18,具体的:
F1.令j=1。
F2.读取候选短信通道资源池中的第j个短信通道的状态标识位,所述第j个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
F3.判断第j个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤F4。
若否则执行步骤F12。
F4.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th4。
若否则执行步骤F5。
若是则执行步骤F8。
F5.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th5,阈值Th5小于阈值Th4。
若是则执行步骤F6。
若否则执行步骤F11。
F6.判断第j个短信通道在当前统计周期t2内的省份级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的省份级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fx个源省份的平均群发成功率。
若否则执行步骤F7。
若是则执行步骤F9。
其中,fx为大于1的整数,例如fx等于2、3、4、5、6、7、8、10或者12等。
其中,阈值Th3的取值范围可为[80%,95%],例如Th3等于80%、85%或者90%等。
F7.判断第j个短信通道在当前统计周期t2内的用户级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的用户级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fy个源用户的平均群发成功率。
若是则执行步骤F10。
若否则执行步骤F11。
其中,fy为大于1的整数,例如fy等于2、3、4、5、6、7、9、10或者12等。
F8.将第i个短信通道加入排序集合fj1,跳转至步骤F13。
F9.将第i个短信通道加入排序集合fj2,跳转至步骤F13。
F10.将第i个短信通道加入排序集合fj3,跳转至步骤F13。
F11.将第i个短信通道加入排序集合fj4,跳转至步骤F13。
F12.将第i个短信通道加入排序集合fj5,跳转至步骤F13。
F13.判断i是否小于N。
若是则令i=i+1,并返回步骤F2。
若否则执行步骤F13。
F14.针对排序集合fj1中的短信通道,按照在当前统计周期t2内的整体群发成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj1中整体群发成功率越高的短信通道选举的优先级越高。
F15.针对排序集合fj2中的短信通道,按照在当前统计周期t2内的省份级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj2中省份级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj2中任意一个短信通道的优先级,低于排序集合fj1中任意一个短信通道的优先级。
F16.针对排序集合fj3中的短信通道,按照在当前统计周期t2内的用户级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj3中用户级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj3中任意一个短信通道的优先级低于,排序集合fj2中任意一个短信通道的优先级。
F17.针对排序集合fj4中的短信通道,按照当前统计周期t2内最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合fj4中任意一个短信通道的优先级低于排序集合fj3中任意一个短信通道的优先级。
F18.针对排序集合fj5中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合fj5中任意一个短信通道的优先级低于排序集合fj4中任意一个短信通道的优先级。
图4和图5举例出的对候选短信通道资源池中短信通道的优先级进行重新选举的机制,可科学合理的实现短信通道的优先级选举,进而为提高短信群发的成功率和及时性奠定更坚实的基础。
本申请实施例提到的当前统计周期的时长可相等或不等。
本申请实施例还提供一种短信群发服务系统,包括短信群发服务端和应用程序接口端。
其中,所述短信群发服务端包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的数据源层。
所述应用程序接口端,用于向所述短信群发服务端推送短信sm1。
所述短信群发服务端中的所述数据源层用于获取应用程序接口端推送的短信sm1。
所述短信群发服务端中的所述服务层,用于在所述短信群发服务端中的所述数据源层获取到由所述应用程序接口端推送的短信sm1后,从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1。
若调用所述短信通道ch1群发所述短信sm1失败,则重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道。
若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。
在一些可能的实施方式中,所述短信sm1被所述应用程序接口端推送到短信队列的队尾,所述短信队列为先入先出队列;被所述应用程序接口端推送到所述短信队列中的所述短信sm1能够被所述短信群发服务端中的所述数据源层获取到。
在所述短信sm1被成功群发之后,所述短信sm1将被所述数据源层从所述短信队列中删除。
在一些可能的实施方式中,所述服务层还用于,在从所述候选短信通道资源池中选定短信通道ch2之时,将所述短信级失败计数器coun-sm1的计数值清零;在调用所述短信通道ch2或所述短信通道ch1成功的群发所述短信sm1之时,将所述短信级失败计数器coun-sm1的计数值清零。
在一些可能实施方式中,服务层还用于,当通道级失败计数器coun-ch1的计数值超过阈值Th2时,降低短信通道ch1的当前优先级,所述通道级失败计数器coun-ch1用于累计所述短信通道ch1的当前统计周期内短信群发失败次数。
在一些可能的实施方式中,服务层还用于,当选举重启计数器coun3的计数值超过阈值Th3时,对所述候选短信通道资源池中短信通道的优先级进行重新选举。
其中,
当所述短信级失败计数器coun-sm1被清零时,所述选举重启计数器coun3的计数值被加X。当通道级失败计数器coun-ch1被清零时,所述选举重启计数器coun3的计数值被加Y。
其中,X小于或等于Y,阈值Th3大于Y。其中,例如阈值Th3的取值范围可为[10Y,30Y]。例如阈值Th3等于10Y、12Y、15Y、17Y、19Y、26Y、28Y或30Y。
例如X的取值范围可为[0.2Y,Y],例如X等于0.2Y、0.3Y、0.5Y、0.8Y或Y。
在一些可能实施方式中,候选短信通道资源池包括N个短信通道,N为大于1的整数(例如N等于2、3、4、5、10、14、15、19、25等);对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
S1.令i=1。
S2.读取候选短信通道资源池中的第i个短信通道的状态标识位,所述第i个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
S3.判断第i个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤S4。
若否则执行步骤S7。
S4.判断第i个短信通道在当前统计周期t1内的最近tm1小时内是否被成功调用。
若是则执行步骤S5。
若否则执行步骤S6。
S5.将第i个短信通道加入排序集合si1,跳转至步骤S8。
S6.将第i个短信通道加入排序集合si2,跳转至步骤S8。
S7.将第i个短信通道加入排序集合si3,跳转至步骤S8。
S8.判断i是否小于N。
若是则令i=i+1,并返回步骤S2。
若否则执行步骤S9。
S9.针对排序集合si1中的短信通道,按照在当前统计周期t1内的被成功调用次数从多到少的顺序来依次选举短信通道的优先级,排序集合si1中被成功调用次数越多的短信通道选举的优先级越高。
S10.针对排序集合si2中的短信通道,按照在当前统计周期t1内的最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合si2中任意一个短信通道的优先级低于排序集合si1中任意一个短信通道的优先级。
S11.针对排序集合si3中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合si3中任意一个短信通道的优先级低于排序集合si2中任意一个短信通道的优先级。
在一些可能实施方式中,候选短信通道资源池包括N个短信通道,N为大于1的整数(例如N等于2、3、4、5、10、14、15、19、25等);对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
F1.令j=1。
F2.读取候选短信通道资源池中的第j个短信通道的状态标识位,所述第j个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态。
F3.判断第j个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态。
若是则执行步骤F4。若否则执行步骤F12。
F4.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th4。
若否则执行步骤F5。若是则执行步骤F8。
F5.判断第i个短信通道在当前统计周期t2内的整体群发成功率是否不小于阈值Th5,阈值Th5小于阈值Th4。
若是则执行步骤F6。若否则执行步骤F11。
F6.判断第j个短信通道在当前统计周期t2内的省份级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的省份级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fx个源省份的平均群发成功率。
若否则执行步骤F7。若是则执行步骤F9。
F7.判断第j个短信通道在当前统计周期t2内的用户级参考成功率是否高于阈值Th4,其中,所述第j个短信通道在当前统计周期t2内的用户级参考成功率,为所述第j个短信通道在当前统计周期t2内短信群发总量最多的fy个源用户的平均群发成功率。
若是则执行步骤F10。若否则执行步骤F11。
F8.将第i个短信通道加入排序集合fj1,跳转至步骤F13。
F9.将第i个短信通道加入排序集合fj2,跳转至步骤F13。
F10.将第i个短信通道加入排序集合fj3,跳转至步骤F13。
F11.将第i个短信通道加入排序集合fj4,跳转至步骤F13。
F12.将第i个短信通道加入排序集合fj5,跳转至步骤F13。
F13.判断i是否小于N。若是则令i=i+1,并返回步骤F2。若否则执行步骤F13。
F14.针对排序集合fj1中的短信通道,按照在当前统计周期t2内的整体群发成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj1中整体群发成功率越高的短信通道选举的优先级越高。
F15.针对排序集合fj2中的短信通道,按照在当前统计周期t2内的省份级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj2中省份级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj2中任意一个短信通道的优先级,低于排序集合fj1中任意一个短信通道的优先级。
F16.针对排序集合fj3中的短信通道,按照在当前统计周期t2内的用户级参考成功率从高到低的顺序来依次选举短信通道的优先级,排序集合fj3中用户级参考成功率越高的短信通道选举的优先级越高;其中,排序集合fj3中任意一个短信通道的优先级低于,排序集合fj2中任意一个短信通道的优先级。
F17.针对排序集合fj4中的短信通道,按照当前统计周期t2内最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合fj4中任意一个短信通道的优先级低于排序集合fj3中任意一个短信通道的优先级。
F18.针对排序集合fj5中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合fj5中任意一个短信通道的优先级低于排序集合fj4中任意一个短信通道的优先级。
请参阅图5,图5是本申请实施例提供的通信设备的结构示意图。如图5所示,一种通信设备可包括:处理器510和存储器520;
其中,处理器510用于调用所述存储器520中存储的程序,以执行方法实施例中由短信群发服务端执行的部分或全部操作。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被计算机执行时,能够实现本申请实施例提供的任意一种方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,计算机程序产品被计算机执行时,能够实现本申请实施例提供的任意一种方法的部分或全部步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中未详述部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可结合或者可以集成到另一个系统,或一些特征可忽略,或者不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可是或者也可不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可分布到多个网络单元上。可根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请的各个实施例中的各功能单元也可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可存储在一个计算机可读取存储介质中。基于这样的理解,本申请技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,而该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质,例如可以包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等等各种可以存储程序代码的介质。
综上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当可理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种短信通道资源的调度处理方法,其特征在于,所述方法应用于短信群发服务系统;其中,所述短信群发服务系统包括短信群发服务端和应用程序接口端;
其中,所述短信群发服务端包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的数据源层;
其中,所述方法包括:在所述短信群发服务端中的所述数据源层获取到由所述应用程序接口端推送的短信sm1后,所述短信群发服务端中的所述服务层从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1;
若调用所述短信通道ch1群发所述短信sm1失败,则重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道;
若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。
2.根据权利要求1所述的方法,其特征在于,所述短信sm1被所述应用程序接口端推送到短信队列的队尾,所述短信队列为先入先出队列;被所述应用程序接口端推送到所述短信队列中的所述短信sm1能够被所述短信群发服务端中的所述数据源层获取到;
在所述短信sm1被成功群发之后,所述短信sm1将被所述数据源层从所述短信队列中删除。
3.根据权利要求1或2所述的方法,其特征在于,
所述方法还包括:
在从所述候选短信通道资源池中选定短信通道ch2之时,所述服务层将所述短信级失败计数器coun-sm1的计数值清零;在调用所述短信通道ch2或所述短信通道ch1成功的群发所述短信sm1之时,所述服务层将所述短信级失败计数器coun-sm1的计数值清零。
4.根据权利要求3所述方法,其特征在于,
所述方法还包括:
当通道级失败计数器coun-ch1的计数值超过阈值Th2时,所述服务层降低所述短信通道ch1的当前优先级,所述通道级失败计数器coun-ch1用于累计所述短信通道ch1的当前统计周期内短信群发失败次数。
5.根据权利要求4所述方法,其特征在于,所述方法还包括:当选举重启计数器coun3的计数值超过阈值Th3时,所述服务层对所述候选短信通道资源池中短信通道的优先级进行重新选举;
其中,
当所述短信级失败计数器coun-sm1被清零时,所述选举重启计数器coun3的计数值被加X;当通道级失败计数器coun-ch1被清零时,所述选举重启计数器coun3的计数值被加Y。
6.根据权利要求5所述方法,其特征在于,所述候选短信通道资源池包括N个短信通道,N为大于1的整数;所述对所述候选短信通道资源池中短信通道的优先级进行重新选举,包括:
S1.令i=1;
S2.读取候选短信通道资源池中的第i个短信通道的状态标识位,所述第i个短信通道的状态标识位所表示的短信通道工作状态为正常状态或者异常状态;
S3.判断第i个短信通道的状态标识位所表示的短信通道工作状态是否为正常状态;
若是则执行步骤S4;
若否则执行步骤S7;
S4.判断第i个短信通道在当前统计周期t1内的最近tm1小时内是否被成功调用;
若是则执行步骤S5;
若否则执行步骤S6;
S5.将第i个短信通道加入排序集合si1,跳转至步骤S8;
S6.将第i个短信通道加入排序集合si2,跳转至步骤S8;
S7.将第i个短信通道加入排序集合si3,跳转至步骤S8;
S8.判断i是否小于N;
若是则令i=i+1,并返回步骤S2;
若否则执行步骤S9;
S9.针对排序集合si1中的短信通道,按照在当前统计周期t1内的被成功调用次数从多到少的顺序来依次选举短信通道的优先级,排序集合si1中被成功调用次数越多的短信通道选举的优先级越高;
S10.针对排序集合si2中的短信通道,按照在当前统计周期t1内的最后1次被成功调用时刻与当前时刻的间隔时长从短到长的顺序,来依次选举短信通道的优先级,最后1次被成功调用时刻距离当前时刻的间隔时长越短的短信通道选举的优先级越高;排序集合si2中任意一个短信通道的优先级低于排序集合si1中任意一个短信通道的优先级;
S11.针对排序集合si3中的短信通道,按照其工作状态被标记为异常状态的时刻与当前时刻的间隔时长从长到短的顺序,来依次选举短信通道的优先级,工作状态被标记为异常状态的时刻与当前时刻的间隔时长越长的短信通道选举的优先级越高;排序集合si3中任意一个短信通道的优先级低于排序集合si2中任意一个短信通道的优先级。
7.一种短信群发服务系统,其特征在于,包括:短信群发服务端和应用程序接口端;
其中,所述短信群发服务端包括:运行环境层、运行于所述运行环境层之上的数据支撑层、运行于所述数据支撑层之上的服务层、运行于所述服务层之上的数据源层;
所述应用程序接口端,用于向所述短信群发服务端推送短信sm1;
所述短信群发服务端中的所述数据源层,用于获取应用程序接口端推送的短信sm1;
所述短信群发服务端中的所述服务层,用于在所述短信群发服务端中的所述数据源层获取到由所述应用程序接口端推送的短信sm1后,从候选短信通道资源池中选定短信通道ch1,并尝试调用所述短信通道ch1群发所述短信sm1;
若调用所述短信通道ch1群发所述短信sm1失败,则重新尝试调用所述短信通道ch1群发所述短信sm1;所述短信通道ch1为所述候选短信通道资源池中当前优先级最高的短信通道;
若短信级失败计数器coun-sm1的计数值超过阈值Th1时仍未能调用所述短信通道ch1成功群发所述短信sm1,则从所述候选短信通道资源池中选定短信通道ch2,并尝试调用所述短信通道ch2群发所述短信sm1,所述短信通道ch2为所述候选短信通道资源池中当前优先级仅次于所述短信通道ch1的短信通道,所述短信级失败计数器coun-sm1用于累计所述短信sm1的群发失败次数。
8.根据权利要求7所述的短信群发服务系统,其特征在于,
所述短信sm1被所述应用程序接口端推送到短信队列的队尾,所述短信队列为先入先出队列;被所述应用程序接口端推送到所述短信队列中的所述短信sm1能够被所述短信群发服务端中的所述数据源层获取到;
在所述短信sm1被成功群发之后,所述短信sm1将被所述数据源层从所述短信队列中删除。
9.一种通信设备,其特征在于,包括:处理器和存储器;
处理器用于调用所述存储器中存储的计算机程序,以执行权利要求1至6任意一项中由短信群发服务端执行的操作。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,其中,当所述计算机程序被计算机执行时,能够实现权利要求1至6任意一项中由短信群发服务端执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211409848.0A CN115460557B (zh) | 2022-11-11 | 2022-11-11 | 短信通道资源的调度处理方法和相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211409848.0A CN115460557B (zh) | 2022-11-11 | 2022-11-11 | 短信通道资源的调度处理方法和相关产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115460557A true CN115460557A (zh) | 2022-12-09 |
CN115460557B CN115460557B (zh) | 2023-02-28 |
Family
ID=84295451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211409848.0A Active CN115460557B (zh) | 2022-11-11 | 2022-11-11 | 短信通道资源的调度处理方法和相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115460557B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019227450A1 (zh) * | 2018-05-31 | 2019-12-05 | 华为技术有限公司 | 应用功能的实现方法及电子设备 |
CN111212391A (zh) * | 2020-01-14 | 2020-05-29 | 中保车服科技服务股份有限公司 | 短信推送方法、装置、设备及可读介质 |
CN114205761A (zh) * | 2021-11-10 | 2022-03-18 | 上海缘远信息技术有限公司 | 一种基于多个短信通道的短信分发方法和设备 |
CN114727241A (zh) * | 2022-03-31 | 2022-07-08 | 重庆米帕斯科技有限公司 | 一种提高短信群发效率的方法 |
-
2022
- 2022-11-11 CN CN202211409848.0A patent/CN115460557B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019227450A1 (zh) * | 2018-05-31 | 2019-12-05 | 华为技术有限公司 | 应用功能的实现方法及电子设备 |
CN111212391A (zh) * | 2020-01-14 | 2020-05-29 | 中保车服科技服务股份有限公司 | 短信推送方法、装置、设备及可读介质 |
CN114205761A (zh) * | 2021-11-10 | 2022-03-18 | 上海缘远信息技术有限公司 | 一种基于多个短信通道的短信分发方法和设备 |
CN114727241A (zh) * | 2022-03-31 | 2022-07-08 | 重庆米帕斯科技有限公司 | 一种提高短信群发效率的方法 |
Non-Patent Citations (1)
Title |
---|
郑延庆等: "广东省天气短信系统群发器的设计", 《广东气象》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115460557B (zh) | 2023-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111555963B (zh) | 消息推送方法、装置、电子设备及存储介质 | |
CN102368714B (zh) | 一种网络告警的处理方法、装置及其系统 | |
CN107679718B (zh) | 名单分配方法、设备以及计算机可读存储介质 | |
Ke et al. | M [x]/(G1, G2)/1 retrial queue under Bernoulli vacation schedules with general repeated attempts and starting failures | |
CN106230997B (zh) | 一种资源调度方法和装置 | |
CN110831038B (zh) | 网络切片资源调度方法及装置 | |
CN110611891A (zh) | 一种短信发送方法及装置 | |
US20170359778A1 (en) | Multi-Channel Communications For Sending Push Notifications To Mobile Devices | |
RU2518202C2 (ru) | Способ выбора ресурсов, которые должны быть освобождены в случае перегрузки сотовой наземной мобильной системы | |
CN101944048A (zh) | 一种终端在音频资源冲突时的管理方法及该终端 | |
EP2999153B1 (en) | Message processing method and base station | |
CN111193792A (zh) | 一种消息传输方法、装置、电子设备和存储介质 | |
CN102333280A (zh) | 一种业务密钥更新的方法、系统及业务处理服务器 | |
CN115460557B (zh) | 短信通道资源的调度处理方法和相关产品 | |
CN106488416B (zh) | 行业短信发送方法与装置 | |
CN107426109B (zh) | 一种流量调度方法、vnf模块及流量调度服务器 | |
CN104123942B (zh) | 一种语音识别方法及系统 | |
CN111182522B (zh) | 一种团伙确定方法、装置、电子设备及计算机存储介质 | |
US9609053B2 (en) | Method, apparatus and system for voice service access | |
CN112260946A (zh) | 一种链路故障的处理方法、装置、终端设备和存储介质 | |
US9130827B2 (en) | Sampling from distributed streams of data | |
CN116017742B (zh) | 基于多级nwdaf的数据处理方法、系统和存储介质 | |
CN110134547B (zh) | 一种基于中间件的重复数据删除方法和相关装置 | |
CN106028292A (zh) | 一种发送短信的通道分配方法及系统 | |
CN113518317A (zh) | 提示信息的发送方法和装置、存储介质及电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |