短信服务自监控动态调整方法和系统与流程

文档序号:32516812发布日期:2022-12-13 16:10阅读:84来源:国知局
短信服务自监控动态调整方法和系统与流程

1.本发明涉及短信服务处理领域,尤其涉及一种短信服务自监控动态调整方法和系统。


背景技术:

2.移动积分商城业务中,短信渠道为主要业务渠道,也是交易环节区别其他主流电商平台的重要区别之一。在主流电商平台的短信使用中,短信主要承担提醒、通知等辅助作用,而在移动积分商城使用中,短信除了具备提醒、通知等辅助作用外,短信渠道还是积分商城的主要兑换渠道,短信兑换订单全渠道占比可达45%-50%。
3.目前积分商城系统的短信功能对接梦网网关实现短信的上下行功能。由于梦网网关的socket通道数量有上限,超过上限的通道,无法建立,因此目前的方案,是按照微服务的方式开发的,每启动一个服务,即创建固定的socket通道。
4.根据目前的技术方案,通道数绑定每个服务,数量相对固定。由于积分商城的业务是面向用户的,商城本身有很多营销活动,对用户访问量会有很大的促进作用,这些活动一般都是积分商城举行的,所以可预知性比较强,可以提前完成扩容和处理,但根据目前情况看,很多活动是省公司或者专业公司带来的,并且没有进行上报和备案,因此无法预知业务量的变化,这时候很容易出现短信拥堵,造成短信发送和接收的延迟,影响用户体验,进而影响业务。


技术实现要素:

5.本发明提供一种短信服务自监控动态调整方法和系统,用以解决现有技术中存在的技术缺陷。
6.本发明提供一种短信服务自监控动态调整方法,包括:
7.按照预设维度采集短信服务实时的socket通道数据;
8.基于所采集的socket通道数据,实时计算变化率;
9.基于所述变化率,进行socket通道的动态调整。
10.根据本发明提供的短信服务自监控动态调整方法,所述按照预设维度采集短信服务实时的socket通道数据之后,还包括:
11.将所采集的socket通道数据存储到redis中,所述redis中仅存储最近预设时间段内的socket通道数据。
12.根据本发明提供的短信服务自监控动态调整方法,所述按照预设维度采集短信服务实时的socket通道数据包括:
13.按照预设维度采集短信服务实时的各个socket通道的上行数据和下行数据,其中,所述上行数据包括用户的短信上行数据和用户发送短信的状态报告数据,所述下行数据包括短信发送数据。
14.根据本发明提供的短信服务自监控动态调整方法,所述基于所采集的socket通道
数据,实时计算变化率包括:
15.基于所述上行数据,实时计算最新连续n次的上行变化率,所述最新连续n次的上行变化率为最新连续n次分别与上一周期中最新一次的上行数据之间的变化率;
16.基于所述下行数据,实时计算最新连续n次的下行变化率,所述最新连续n次的下行变化率为最新连续n次分别与上一周期中最新一次的下行数据之间的变化率。
17.根据本发明提供的短信服务自监控动态调整方法,基于所述变化率,进行socket通道的动态调整包括:
18.判断最新连续n次的上行变化率的均值是否在预设比例范围内;
19.若是,则基于所述最新连续n次的上行变化率的均值,在预设上行通道数范围内调整socket上行通道数;以及
20.判断最新连续n次的下行变化率的均值是否在预设比例范围内;
21.若是,则基于所述最新连续n次的所述变化率的均值,在预设下行通道数范围内调整socket下行通道数;其中,所述n为正整数。
22.根据本发明提供的短信服务自监控动态调整方法,所述基于所述变化率,进行socket通道的动态调整之后还包括:
23.基于所述调整的socket上行通道数,调整相关短信上行处理线程;
24.基于所述调整的socket下行通道数,调整相关短信下行处理线程。
25.本发明还提供了一种短信服务自监控动态调整系统,包括:
26.短信上下行监控模块,用于按照预设维度采集短信服务实时的socket通道数据;
27.变化率确定模块,用于基于所采集的socket通道数据,实时计算变化率;
28.动态调控模块,用于基于所述变化率,进行socket通道的动态调整。
29.根据本发明提供的短信服务自监控动态调整系统,所述动态调整系统包括:
30.存储模块,用于将所采集的socket通道数据存储到redis中,所述redis中仅存储最近预设时间段内的socket通道数据。
31.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述短信服务自监控动态调整方法的步骤。
32.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述短信服务自监控动态调整方法的步骤。
33.本发明实施例的短信服务自监控动态调整方法,在短信的发送接收服务器增加监控和动态调整功能,按照一定的维度进行数据采集,根据采集的数据量,实时计算变化率;并根据变化率进行socket通道的管理和动态调整,业务量激增时,根据监控数据进行socket通道动态增加,业务量减少时,根据监控数据进行socket通道动态向下调整,具有更好的实时调整效果,精准高效,可以实现短信动态自动扩缩容,避免手工处理,减少对业务影响;且增加的短信监控统计及动态调整功能与现有其他功能分离,互不干扰。
附图说明
34.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一
些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.图1是本发明一实施例提供的短信服务自监控动态调整方法的流程示意图;
36.图2是本发明一实施例提供的短信服务自监控动态调整系统的示意图;
37.图3是本发明提供的电子设备的结构示意图。
具体实施方式
38.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.本发明实施例公开了一种短信服务自监控动态调整方法,参见图1,包括:
40.s1:按照预设维度采集短信服务实时的socket通道数据;
41.s1中,socket通道就是对网络中不同主机上的应用进程之间进行双向通信的网络通信通道。socket通道数据包括各个socket通道的上行数据和下行数据。预设维度可以设置为每5秒采集一次数据。
42.s2:基于所采集的socket通道数据,实时计算变化率;
43.s2中,各个socket通道的上行数据和下行数据是在实时变化的,因此,需要实时计算变化率。
44.s3:基于所述变化率,进行socket通道的动态调整。
45.s3中,根据统计出的变化率和监控数据,进行socket通道和处理线程的动态调整,来满足业务量引起的动态扩缩容。根据变化率进行socket通道的管理和动态调整,业务量激增时,根据监控数据进行socket通道动态增加,业务量较低时,根据监控数据进行socket通道动态向下调整。
46.本发明实施例在短信的发送接收服务器增加监控和动态调整功能,按照一定的维度进行数据采集,根据采集的数据量,实时计算变化率;并根据变化率进行socket通道的管理和动态调整,业务量激增时,根据监控数据进行socket通道动态增加,业务量减少时,根据监控数据进行socket通道动态向下调整,具有更好的实时调整效果,精准高效,可以实现短信动态自动扩缩容,避免手工处理,减少对业务影响;且增加的短信监控统计及动态调整功能与现有其他功能分离,互不干扰。
47.进一步的,所述按照预设维度采集短信服务实时的socket通道数据之后,还包括:
48.将所采集的socket通道数据存储到redis中,所述redis中仅存储最近预设时间段内的socket通道数据。预设时间段内一般设置为30分钟。redis(remote dictionary server),即远程字典服务,是一个开源的使用ansi c语言编写、支持网络、可基于内存亦可持久化的日志型、key-value数据库,并提供多种语言的api。只保存近30分钟的数据可以减小数据量,对redis的占用容量需求小,同时提高效率。
49.根据本发明提供的短信服务自监控动态调整方法,所述按照预设维度采集短信服务实时的socket通道数据包括:
50.按照预设维度采集短信服务实时的各个socket通道的上行数据和下行数据,其
中,所述上行数据包括用户的短信上行数据和用户发送短信的状态报告数据,所述下行数据包括短信发送数据。
51.在短信服务模块上增加短信上下行监控和动态调控这两个守候线程进行socket通道和处理线程的动态调整,来满足业务量引起的动态扩缩容。
52.根据本发明提供的短信服务自监控动态调整方法,所述基于所采集的socket通道数据,实时计算变化率包括:
53.基于所述上行数据,实时计算最新连续n次的上行变化率,所述最新连续n次的上行变化率为最新连续n次分别与上一周期中最新一次的上行数据之间的变化率;
54.基于所述下行数据,实时计算最新连续n次的下行变化率,所述最新连续n次的下行变化率为最新连续n次分别与上一周期中最新一次的下行数据之间的变化率。
55.根据本发明提供的短信服务自监控动态调整方法,基于所述变化率,进行socket通道的动态调整包括:
56.判断最新连续n次的上行变化率的均值是否在预设比例范围内;
57.预设比例范围内是指大于5%或小于-5%,也就是变化率超出5%,时需要调整,一般的,每个周期上行变化率均值的变化率是超出5%的。
58.连续n次的上行变化率,是指n次中的每次采集的上行数据与上一个周期中最新一次的上行数据进行比对,计算出的变化率,可能是增长,也可能是减小,如果增长,变化率为正值,如果减小,变化率为负值。一个周期中包含了n次的上行数据,n优选为10次,10次的均值对扩缩容更具有指导性。
59.若是,则基于所述最新连续n次的上行变化率的均值,在预设上行通道数范围内调整socket上行通道数;以及
60.判断最新连续n次的下行变化率的均值是否在预设比例范围内;
61.同样的,预设比例范围内是指大于5%或小于-5%,也就是变化率超出5%,时需要调整,一般的,每个周期下行变化率的均值的变化率是超出5%的。连续n次的下行变化率,是指n次中的每次采集的下行数据与上一个周期中最新一次的下行数据进行比对,计算出的变化率,可能是增长,也可能是减小,如果增长,变化率为正值,如果减小,变化率为负值。一个周期中包含了n次的下行数据,n优选为10次,10次的均值对扩缩容更具有指导性。
62.若是,则基于所述最新连续n次的所述变化率的均值,在预设下行通道数范围内调整socket下行通道数;其中,所述n为正整数。
63.根据每秒钟采集到的每个socket线程数据最新一个周期的变化率来扩容或缩容socket通道数,可以实时对socket通道数进行更新。
64.根据本发明提供的短信服务自监控动态调整方法,所述基于所述变化率,进行socket通道的动态调整之后还包括:
65.基于所述调整的socket上行通道数,调整相关短信上行处理线程;
66.基于所述调整的socket下行通道数,调整相关短信下行处理线程。调整相关短信上行处理线程、调整相关短信下行处理线程可以是同步进行的,也可以是分别单独进行的,也可以只调整上行处理线程或者下行处理线程,是在进行socket通道的动态调整之后实时进行调整的。只有在进行socket通道的动态调整后还需要进行调整相关短信上行处理线程、和/或调整相关短信下行处理线程,如果socket通道不调整,那么,短信上行处理线程、
和/或相关短信下行处理线程也不需要调整。
67.需要对socket通道扩容的同时,根据socket的量的1.5倍扩容相关短信上下行处理线程,与socket的增长比例相同,可以实时更新线程数。
68.为了进一步详细说明本方法,在一个具体实施例中,统计监控和动态处理流程如下:
69.1、服务启动后,同时启动两个守候线程:短信上下行统计监控和动态调整。
70.2、短信上下行统计监控进行数据采集,每1秒采集上行数据和下行的数据,采集对象是现有的socket通道数据,采集完成后存储到redis中,redis只保持最近30分钟的数据,其他数据不需要保留。
71.(1)采集上行数据:上行数据主要包括用户的短信上行数据和用户发送短信的状态报告数据,采集主要采集每个socket的每秒的数据量;
72.(2)采集下行数据:下行数据全部是短信发送数据,采集主要采集每个socket的每秒的数据量。
73.动态调控是指根据采集的数据,进行socket通道及处理线程数的调整,实现动态扩缩容。动态调整模块根据每秒钟采集到的每个socket线程数据,若连续10次的增长量均值如果超过5%,则需要进行扩容,扩容比例按照最新一个周期,也就是最新连续10次的增长量均值来扩容socket通道数。例如,若上行数据连续10次的增长量均值为10%,则上行数据的扩容比例为10%,比如现在有100个通道数,比例增长了10%,那么增长到110个通道。若下行数据连续10次的增长量均值为8%,则下行数据的扩容比例为8%。比如现在有100个通道,比例缩容了8%,那么缩容到92个通道。
74.具体的,可以根据每5秒钟采集的各个通道的数据进行加和,计算出这一秒的短信上行或者下行的数据量,将这个数据写到redis中。redis中总共保存最近30分钟的数据;
75.socket监控守候线程每5秒计算前10次短信上行和短信下行的增长比例,若上行数据或下行数据连续10次每次的变化率都超过5%,即认定需要对上行数据或下行数据扩容通道,扩容比例按照连续10次的增长量均值增长,直到socket增长数量达到上限为止。注:通常的短信通道总数是200个,由于短信下行的短信量远高于短信上行的量,所以分配通道数量时,进行了上下行的限制,由于,短信下行数量一般大于上行数量,因此可以设置为短信上行通道最多40个,短信下行通道总数最多160个。
76.上行数据、下行数据的变化率是分别进行判断的,也是分别基于各自的变化率,决定是否需要调整各自的socket通道,上行、下行是同时且分别独立进行监控判断和调整的。
77.动态调整模块需要对socket通道扩容的同时,需要根据socket的量的1.5倍扩容相关短信上下行处理线程,与socket的增长比例相同。socket监控守候线程在进行socket的扩容时,同时需要扩容短信上行和短信下行的处理现场,线程处理规则:每扩容一个socket通道,即增加1.5个处理线程(向上取整),该线程的多少依赖于socket通道的多少。当业务量减少时,采用等比例缩容操作的方式进行。
78.本发明实施例公开了一种短信服务自监控动态调整系统,参见图2,包括:
79.短信上下行监控模块10,用于按照预设维度采集短信服务实时的socket通道数据;
80.变化率确定模块20,用于基于所采集的socket通道数据,实时计算变化率;
81.动态调控模块30,用于基于所述变化率,进行socket通道的动态调整。
82.根据本发明提供的短信服务自监控动态调整系统,所述动态调整系统包括:
83.存储模块,用于将所采集的socket通道数据存储到redis中,所述redis中仅存储最近预设时间段内的socket通道数据。
84.进一步的,短信上下行监控模块10具体用于:
85.按照预设维度采集短信服务实时的各个socket通道的上行数据和下行数据,其中,所述上行数据包括用户的短信上行数据和用户发送短信的状态报告数据,所述下行数据包括短信发送数据。
86.根据本发明提供的短信服务自监控动态调整系统,变化率确定模块20具体用于:
87.基于所述上行数据,实时计算最新连续n次的上行变化率,所述最新连续n次的上行变化率为最新连续n次分别与上一周期中最新一次的上行数据之间的变化率;
88.基于所述下行数据,实时计算最新连续n次的下行变化率,所述最新连续n次的下行变化率为最新连续n次分别与上一周期中最新一次的下行数据之间的变化率。
89.判断最新连续n次的上行变化率的均值是否在预设比例范围内;
90.预设比例范围内是指大于5%或小于-5%,也就是变化率超出5%,时需要调整,一般的,每个周期上行变化率均值的变化率是超出5%的。
91.连续n次的上行变化率,是指n次中的每次采集的上行数据与上一个周期中最新一次的上行数据进行比对,计算出的变化率,可能是增长,也可能是减小,如果增长,变化率为正值,如果减小,变化率为负值。一个周期中包含了n次的上行数据,n优选为10次,10次的均值对扩缩容更具有指导性。
92.若是,则基于所述最新连续n次的上行变化率的均值,在预设上行通道数范围内调整socket上行通道数;以及
93.判断最新连续n次的下行变化率的均值是否在预设比例范围内;
94.同样的,预设比例范围内是指大于5%或小于-5%,也就是变化率超出5%,时需要调整,一般的,每个周期下行变化率的均值的变化率是超出5%的。连续n次的下行变化率,是指n次中的每次采集的下行数据与上一个周期中最新一次的下行数据进行比对,计算出的变化率,可能是增长,也可能是减小,如果增长,变化率为正值,如果减小,变化率为负值。一个周期中包含了n次的下行数据,n优选为10次,10次的均值对扩缩容更具有指导性。
95.若是,则基于所述最新连续n次的所述变化率的均值,在预设下行通道数范围内调整socket下行通道数;其中,所述n为正整数。
96.根据每秒钟采集到的每个socket线程数据最新一个周期的变化率来扩容或缩容socket通道数,可以实时对socket通道数进行更新。
97.根据本发明提供的短信服务自监控动态调整系统,动态调控模块具体用于:
98.判断最新连续n次的上行变化率的均值是否在预设比例范围内;
99.若是,则基于所述最新连续n次的上行变化率的均值,在预设上行通道数范围内调整socket上行通道数;以及
100.判断最新连续n次的下行变化率的均值是否在预设比例范围内;
101.若是,则基于所述最新连续n次的所述变化率的均值,在预设下行通道数范围内调整socket下行通道数;其中,所述n为正整数。
102.具体的,判断最新连续n次的上行变化率的均值是否在预设比例范围内;
103.预设比例范围内是指大于5%或小于-5%,也就是变化率超出5%,时需要调整,一般的,每个周期上行变化率均值的变化率是超出5%的。
104.连续n次的上行变化率,是指n次中的每次采集的上行数据与上一个周期中最新一次的上行数据进行比对,计算出的变化率,可能是增长,也可能是减小,如果增长,变化率为正值,如果减小,变化率为负值。一个周期中包含了n次的上行数据,n优选为10次,10次的均值对扩缩容更具有指导性。
105.若是,则基于所述最新连续n次的上行变化率的均值,在预设上行通道数范围内调整socket上行通道数;以及
106.判断最新连续n次的下行变化率的均值是否在预设比例范围内;
107.同样的,预设比例范围内是指大于5%或小于-5%,也就是变化率超出5%,时需要调整,一般的,每个周期下行变化率的均值的变化率是超出5%的。连续n次的下行变化率,是指n次中的每次采集的下行数据与上一个周期中最新一次的下行数据进行比对,计算出的变化率,可能是增长,也可能是减小,如果增长,变化率为正值,如果减小,变化率为负值。一个周期中包含了n次的下行数据,n优选为10次,10次的均值对扩缩容更具有指导性。
108.若是,则基于所述最新连续n次的所述变化率的均值,在预设下行通道数范围内调整socket下行通道数;其中,所述n为正整数。
109.根据每秒钟采集到的每个socket线程数据最新一个周期的变化率来扩容或缩容socket通道数,可以实时对socket通道数进行更新。
110.根据本发明提供的短信服务自监控动态调整系统,还包括处理线程调整模块,所述处理线程调整模块用于:
111.基于所述调整的socket上行通道数,调整相关短信上行处理线程;
112.和/或,基于所述调整的socket下行通道数,调整相关短信下行处理线程。
113.基于所述调整的socket下行通道数,调整相关短信下行处理线程。调整相关短信上行处理线程、调整相关短信下行处理线程可以是同步进行的,也可以是分别单独进行的,也可以只调整上行处理线程或者下行处理线程,是在进行socket通道的动态调整之后实时进行调整的。只有在进行socket通道的动态调整后还需要进行调整相关短信上行处理线程、和/或调整相关短信下行处理线程,如果socket通道不调整,那么,短信上行处理线程、和/或相关短信下行处理线程也不需要调整。
114.图3示例了一种电子设备的实体结构示意图,该电子设备可以包括:处理器(processor)310、通信接口(communications interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行一种短信服务自监控动态调整方法,该方法包括:
115.s1:按照预设维度采集短信服务实时的socket通道数据;
116.s2:基于所采集的socket通道数据,实时计算变化率;
117.s3:基于所述变化率,进行socket通道的动态调整。
118.此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明
的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
119.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行一种短信服务自监控动态调整方法,该方法包括:
120.s1:按照预设维度采集短信服务实时的socket通道数据;
121.s2:基于所采集的socket通道数据,实时计算变化率;
122.s3:基于所述变化率,进行socket通道的动态调整。
123.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行一种短信服务自监控动态调整方法,该方法包括:
124.s1:按照预设维度采集短信服务实时的socket通道数据;
125.s2:基于所采集的socket通道数据,实时计算变化率;
126.s3:基于所述变化率,进行socket通道的动态调整。
127.以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
128.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
129.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1