一种基于分布式锁的信息发送方法、装置及存储介质

文档序号:1966228 发布日期:2021-12-14 浏览:10次 >En<

阅读说明:本技术 一种基于分布式锁的信息发送方法、装置及存储介质 (Information sending method and device based on distributed lock and storage medium ) 是由 李铁擎 于 2021-08-20 设计创作,主要内容包括:本发明公开了一种基于分布式锁的信息发送方法、装置及存储介质,方法包括:接收第一信息发送请求消息,包括接收方手机号码和信息;根据接收方手机号码、信息和时间段,生成发送信息标识;保存接收方手机号码、信息、时间段和发送信息标识到第二信息发送请求消息;发送第二信息发送请求消息给消息队列;从消息队列获取第二信息发送请求消息;对发送信息标识增加分布式锁,如果增加分布式锁成功,则发送信息给接收方手机号码。通过本发明实施例,解决了多个短信平台实例从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。(The invention discloses an information sending method, an information sending device and a storage medium based on a distributed lock, wherein the method comprises the following steps: receiving a first information sending request message, wherein the first information sending request message comprises a receiver mobile phone number and information; generating a sending information identifier according to the mobile phone number, the information and the time period of the receiver; storing the mobile phone number, the information, the time period and the sending information identification of the receiver to a second information sending request message; sending a second information sending request message to the message queue; acquiring a second information sending request message from the message queue; and adding a distributed lock to the sent information identifier, and if the distributed lock is successfully added, sending the information to the mobile phone number of the receiver. The embodiment of the invention solves the problem that the short messages sent by a plurality of short message platform instances from the message queue are the same as the short messages sent by the user repeatedly, reduces the cost for sending the short messages, and avoids the user from receiving a plurality of same short messages, thereby improving the user experience.)

一种基于分布式锁的信息发送方法、装置及存储介质

技术领域

本发明涉及计算机技术领域,尤其涉及一种基于分布式锁的信息发送方法、装置及存储介质。

背景技术

越来越多的公司都有自己的短信服务平台,用于管理公司内部所有的短信发送业务。为了应对短信发送的高并发请求,短信平台通常会采用消息队列,以将短信发送申请的处理和短信发送服务商分隔开,这样即使遇到突发大流量的状况,也可以先将短信发送信息暂时存放在消息队列中进行缓存,之后再逐个进行处理,从而保障了短信平台的高可用。但是消息队列有个经常会遇到的问题,即同一条数据的重复消费问题,这样导致同一个手机号码会由于消息的重复消费导致收到了多条同样的内容,这不仅会影响短信平台的可靠性,也会造成很大的经济损失,同时也会影响用户体验。

发明内容

本发明的主要目的在于提供一种基于分布式锁的信息发送方法、装置及存储介质,旨在解决现有技术中通过消息队列发送短信遇到的同一条数据重复消费问题,从而使同一个手机号码由于消息的重复消费导致收到了多条同样的内容,这不仅会影响短信平台的可靠性,也会造成很大的经济损失,同时也会影响用户体验。

为实现上述目的,本发明提供了一种基于分布式锁的信息发送方法,所述方法包括以下步骤:

接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息;

根据所述接收方手机号码、所述信息和时间段,生成发送信息标识;

保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息;

发送所述第二信息发送请求消息给消息队列;

从所述消息队列获取所述第二信息发送请求消息;

对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。

可选地,所述生成发送信息标识,通过以下步骤实现:

对所述接收方手机号码、所述信息和所述时间段进行MD5计算,获得MD5值,所述MD5值作为所述发送信息标识。

可选地,所述时间段通过以下步骤获取:

把一段时间分成多个所述时间段,所述时间段的时长根据允许重复发送信息的时间间隔的时长进行设置;

获取接收到所述信息发送请求消息的时刻;

根据所述时刻,在所述多个所述时间段中进行匹配,获得匹配的所述时间段。

可选地,所述对所述发送信息标识增加分布式锁,包括以下步骤:

使用Redis数据库的setnx命令把所述发送信息标识存储到所述Redis数据库中;

如果存储成功,表示增加所述分布式锁成功;如果存储失败,表示增加所述分布式锁失败。

可选地,所述方法还包括以下步骤:

获取所述第二信息发送请求消息的所述时间段;

获取所述时间段的时长;

设置所述时长为所述setnx命令的超时时间。

可选地,所述方法还包括以下步骤:

接收所述第一信息发送请求消息后,对所述接收方手机号码和所述信息进行合法性检测;

如果所述合法性检测失败,则丢弃所述第一信息发送请求消息;如果所述合法性检测成功,则继续进行后续步骤处理。

可选地,所述信息包括短信、彩信、视频短信中的至少一个。

此外,为实现上述目的,本发明还提出一种基于分布式锁的信息发送装置,所述装置包括:

接收单元,用于接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息;

计算单元,用于根据所述接收方手机号码、所述信息和时间段,生成发送信息标识;还用于保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息;

发送单元,用于发送所述第二信息发送请求消息给消息队列;

分布式锁单元,用于从所述消息队列获取所述第二信息发送请求消息;还用于对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。

此外,为实现上述目的,本发明还提出一种电子设备,所述电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于分布式锁的信息发送程序,所述基于分布式锁的信息发送程序配置为实现如上文所述的基于分布式锁的信息发送方法的步骤。

此外,为实现上述目的,本发明还提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上文所述的基于分布式锁的信息发送方法的步骤。

本发明通过对消息队列中的发送信息进行分布式锁,解决了多个短信平台进程或线程从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。

附图说明

图1为本发明提供的基于分布式锁的信息发送方法的一个流程示意图。

图2为本发明提供的基于分布式锁的信息发送方法的另一个流程示意图。

图3为本发明提供的匹配时间段的一个流程示意图。

图4为本发明提供的设置分布式锁超时时间的一个流程示意图。

图5为本发明提供的基于分布式锁的信息发送装置的结构框图。

图6为本发明提供的一种电子设备的结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅以解释本发明,并不用于限定本发明。

在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

在一个实施例中,如图1所示,本发明提供一种基于分布式锁的信息发送方法,所述方法包括:

步骤101、接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息。

在本申请实施例中,短信服务平台提供API接口给业务层调用,业务层通过调用短信服务平台提供的API接口实现信息发送。如发送短信API接口为HTTP协议的post请求,也可以采用其他协议实现短信发送的API接口。

该API接口实现信息发送请求消息的发送,信息发送请求消息中携带需要发送的信息内容(如短信、彩信、视频短信等内容)、接收方手机号码(如136880xxxxx)。

短信服务平台通过API接口收到业务层发送的信息发送请求消息后,从该消息中获取业务层需要发送的信息(如短信、彩信、视频短信等内容)和接收方手机号码,保存到本地内存或数据库中。

步骤102、根据所述接收方手机号码、所述信息和时间段,生成发送信息标识。

短信服务平台收到应用层发送的信息发送请求消息后,需要为该次发送的信息生成一个全局唯一的发送信息标识。该发送信息标识用于后续队列缓存时唯一标识一条待发送的信息。

业务层存在重复发送短信的可能,因此短信服务平台需要能够识别出那些是重复短信。如业务层在一段时间内(如5分钟,具体可以根据业务需要进行设置)收到多条信息内容和接收方手机号码的相同的信息发送请求消息,则表示这些信息是重复的。重复的信息,生成的发送信息标识也需要相同,这样在消息队列中,可以通过发送信息标识来判断那些是重复的信息。

短信服务平台生成发送信息标识通过MD5算法实现,把接收方手机号码、时间段和信息按如下方式保存为文件:接收方手机号码+时间段+信息,如:“1380000888820:20:00~20:29:59测试短信”。然后对保存的文件(如:123.data)进行MD5计算,得到32位的16进制的字符串(即MD5值)。

文件 MD5值
123.data E6FACD4408F6621109EB2E5F2D4BFBAA

把MD5值作为该信息发送请求消息的发送信息标识。相同文件,通过MD5算法计算获得的MD5值相同,因此在一段时间内收到相同的信息和接收方号码,生成的发送信息标识也相同。因此,可以通过判断发送信息标识(MD5值)可以判断在一段时间内是否收到相同的信息发送请求消息。

时间段的获取,通过如图3所示流程获得。

步骤201、把一段时间分成多个所述时间段,所述时间段的时长根据允许重复发送信息的时间间隔的时长进行设置。

短信服务平台根据业务需求,把1天划分成多个时间段。每个时间段的时长,可以根据允许重复发送信息的时间间隔的时长进行设置,如业务层规定超过10分钟就允许给用户发送重复的短信。如用户进行注册时,业务层需要给用户发送注册提示信息。当用户在10分钟内进行多次注册时,只需要发送一次提示信息;当用户超过10分钟后再次进行注册时,需要再发送提示信息。短信服务平台根据业务需求,把1天24小时划分成多个时间段

时间段id 起始时间 结束时间
1 00:00:00 00:9:59
2 00:10:00 00:19:59
n 23:50:00 23:59:59

步骤202、获取接收到所述信息发送请求消息的时刻。

步骤203、根据所述时刻,在所述多个所述时间段中进行匹配,获得匹配的所述时间段。

短信服务平台收到信息发送请求消息后,获取接收到消息的当前时刻,如当前时刻20:15:25,当前时刻20:15:25所属的时间段为20:10:00~20:19:59。从而获取到该信息发送请求消息对应的时间段。

在一个时间段(如20:10:00~20:19:59)收到多条信息发送请求消息,多条信息发送请求消息对应的时间段都是相同的,如20:10:00~20:19:59。

步骤103、保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息。

步骤104、发送所述第二信息发送请求消息给消息队列。

短信服务平台收到业务层发送的信息发送请求消息后,进行相应处理,获得该信息发送请求消息对应的发送信息标识后,需要把发送信息标识重新打包到信息发送请求消息中,然后把包含发送信息标识的信息发送请求消息(即第二信息发送请求消息)发送给消息队列。

短信服务平台把收到的信息发送请求消息发送给消息队列,是为了防止业务层在高峰期发送大量信息发送请求消息给短信服务平台,而短信服务平台通过短信发送服务商提供的短信发送功能无法及时进行发送时,通过消息队列实现平滑处理。

消息队列可以是短信服务平台内部自己实现的消息队列,如先进先出的消息队列;也可以是第三方提供的消息队列中间件,如Kafka、RabbitMQ、RocketMQ等消息队列中间件。

消息队列具有较多的数据处理吞吐量,如万级、十万级的吞吐量。因此业务层在业务高峰期同时发送大量的信息发送请求消息时,消息队列也能够及时存储。这些大量的信息发送请求消息保存到消息队列后,短信服务平台可以根据自己业务处理能力,逐步从消息队列中获取信息发送请求消息,然后发送对应的信息(短信、彩信或视频短信)给对应的手机号码。

步骤105、从所述消息队列获取所述第二信息发送请求消息。

短信服务平台会使用多个短信服务商提供的接口进行短信发送,因此会启动多个线程或进程来进行短信的发送;或者只有一个短信服务提供商时,也可以启动多个线程或进程调用短信服务提供商提供的接口进行短信发送。

每个线程或进程根据自己的业务处理能力,逐步从消息队列(如RabbitMQ消息队列中间件)中获取第二信息发送请求消息。获取第二信息发送请求消息后,从该消息中取出信息、接收方手机号码、时间段、发送消息标识,如下表所示:

步骤106、对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。

短信服务平台发送短信的线程或进程在获取第二信息发送请求消息后,需要对该消息进行分布式锁,只有分布式锁成功后,才能发送该消息中对应的信息。如果分布式锁失败,则表示该信息已被其他线程处理了,或者该信息是重复信息。

短信服务平台分布式锁通过Redis数据库的setnx命令实现。setnx命令如下:SETkey value。

key为第二信息发送请求消息中的发送消息标识,value为随机值。如:

set E6FACD4408F6621109EB2E5F2D4BFBAA 123456

Redis数据库的set命令,只有key值不存在时才能执行成功。因此,某个线程A执行key值为E6FACD4408F6621109EB2E5F2D4BFBAA的set命令成功后,其他线程(如线程B)就无法再执行key值为E6FACD4408F6621109EB2E5F2D4BFBAA的set命令。因此,可以通过把发送消息标识作为set命令的key值实现对第二信息发送请求消息的分布式锁功能。

当线程A获取第二信息发送请求消息后,使用该消息中的发送消息标识作为set命令的key值,执行该set命令。如果执行成功,则表明之前没有线程对该第二信息发送请求消息进行了处理,即表示线程A获得该第二信息发送请求消息的分布式锁,获得该消息的分布式锁后,对该消息进行信息发送,如发送短信给接收方手机号码。其他线程无法再获得该第二信息发送请求消息的分布式锁,也就无法对该第二信息发送请求消息进行处理。

在同一时间段内收到相同的第一信息发送请求消息,生产的发送消息标识也相同。因此某个线程从消息队列中获取了一个消息进行发送后,其他线程再获取到相同消息时,由于该相同消息的发送消息标识相同,因此再使用相同的发送消息标识作为set命令的key值时,set命令无法执行成功。其他线程也就无法获取到相同消息的分布式锁,也就无法发送相同信息给接收方手机号码。

在本实施例中,通过对消息队列中的发送信息进行分布式锁,解决了多个短信平台线程或进程从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。

在一个实施例中,图2提供了图1实施例101步骤后,对消息内容进行合法性检测的流程图。

步骤107、对所述接收方手机号码和所述信息进行合法性检测。

短信服务平台收到业务层发送的信息发送请求消息后,对消息中携带的信息和接收方手机号码进行合法性检测。判断信息是否为有效的短信、彩信和视频短信的一种,接收方手机号码是否为有效的手机号码。

步骤108、如果所述合法性检测失败,则丢弃所述第一信息发送请求消息;如果所述合法性检测成功,则继续进行后续步骤处理。

通过合法性检测后,判断信息是有效的短信、彩信和视频短信的一种,且接收方手机号码也是有效的手机号码,则表示合法性检测通过,继续进行后续处理流程;如果判断信息不是有效的短信、彩信和视频短信的一种,或接收方手机号码不是有效的手机号码,则表示合法性检测未通过,丢弃该信息发送请求消息。

在本实施例中,短信服务平台对收到的信息发送请求消息进行合法性检测,检测通过的才进行后续流程处理,可以防止非法消息被后续流程处理,从而提升短信服务平台的处理能力,同时减少了短信发送费用、避免用户收到异常短信,从而提高了用户体验。

在一个实施例中,图4提供了设置分布式锁超时时间的流程图。

步骤301、获取所述第二信息发送请求消息的所述时间段。

短信服务平台发送短信的线程或进程从消息队列获取第二信息发送请求消息后,取出该消息中的时间段。如时间段为20:10:00~20:19:59。

步骤302、获取所述时间段的时长。

获取该时间段的时长,如时间段20:10:00~20:19:59的时长为10分钟(600秒)。

步骤303、设置所述时长为所述setnx命令的超时时间。

短信服务平台发送短信的线程或进程对第二信息发送请求消息中的发送消息标识作为set命令的key值,执行该set命令时,把时间段的时长作为该set命令的超时时长。如:

set E6FACD4408F6621109EB2E5F2D4BFBAA 123456EX 600

set命令执行成功后,Redis数据库在超时时长到期后,会自动删除该key值。Redis删除该key值后,后续发送短信的线程或进程对相同消息的发送消息标识作为set命令的key值,执行该set命令时可以成功,从而确保在一个时间段后,可以发送相同的短信。

在本实施例中,短信服务平台在设置分布式锁时,把消息的时间段的时长作为分布式锁的超时时长。超时后,自动删除分布式锁。从而使相同的信息在一段时间后,可以发送给相同的用户。从而提升了短信发送平台的业务灵活性,提升用户体验。

此外,本发明实施例还提出一种基于分布式锁的信息发送装置,参照图5,所述基于分布式锁的信息发送装置包括:

接收单元,用于接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息;

计算单元,用于根据所述接收方手机号码、所述信息和时间段,生成发送信息标识;还用于保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息;

发送单元,用于发送所述第二信息发送请求消息给消息队列中间件;

分布式锁单元,用于从所述消息队列中间件获取所述第二信息发送请求消息;还用于对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。

本实施例通过上述方案,通过对消息队列中的发送信息进行分布式锁,解决了多个短信平台线程或进程从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。

需要说明的是,上述装置中的各单元可用于实现上述方法中的各个步骤,同时达到相应的技术效果,本实施例在此不再赘述。

参照图6,图6为本发明实施例提供的一种电子设备的结构示意图。

如图6所示,该电子设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI、4G、5G接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图6中示出的结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于分布式锁的信息发送程序。

在图6所示的电子设备中,网络接口1004主要用于与外部网络进行数据通信;用户接口1003主要用于接收用户的输入指令;电子设备通过处理器1001调用存储器1005中存储的基于分布式锁的信息发送程序,并执行以下操作:

接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息;

根据所述接收方手机号码、所述信息和时间段,生成发送信息标识;

保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息;

发送所述第二信息发送请求消息给消息队列中间件;

从所述消息队列中间件获取所述第二信息发送请求消息;

对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。

可选地,所述生成发送信息标识,通过以下步骤实现:

对所述接收方手机号码、所述信息和所述时间段进行MD5计算,获得MD5值,所述MD5值作为所述发送信息标识。

可选地,所述时间段通过以下步骤获取:

把一段时间分成多个所述时间段,所述时间段的时长根据允许重复发送信息的时间间隔的时长进行设置;

获取接收到所述信息发送请求消息的时刻;

根据所述时刻,在所述多个所述时间段中进行匹配,获得匹配的所述时间段。

可选地,所述对所述发送信息标识增加分布式锁,包括以下步骤:

使用Redis数据库的setnx命令把所述发送信息标识存储到所述Redis数据库中;

如果存储成功,表示增加所述分布式锁成功;如果存储失败,表示增加所述分布式锁失败。

可选地,所述方法还包括以下步骤:

获取所述第二信息发送请求消息的所述时间段;

获取所述时间段的时长;

设置所述时长为所述setnx命令的超时时间。

可选地,所述方法还包括以下步骤:

接收所述第一信息发送请求消息后,对所述收方手机号码和所述信息进行合法性检测;

如果所述合法性检测失败,则丢弃所述第一信息发送请求消息;如果所述合法性检测成功,则继续进行后续步骤处理。

可选地,所述信息包括短信、彩信、视频短信中的至少一个。

本实施例通过上述方案,通过对消息队列中的发送信息进行分布式锁,解决了多个短信平台线程或进程从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。

此外,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质上存储有基于分布式锁的信息发送程序,基于分布式锁的信息发送程序被处理器执行时实现如下操作:

接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息;

根据所述接收方手机号码、所述信息和时间段,生成发送信息标识;

保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息;

发送所述第二信息发送请求消息给消息队列中间件;

从所述消息队列中间件获取所述第二信息发送请求消息;

对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。

可选地,所述生成发送信息标识,通过以下步骤实现:

对所述接收方手机号码、所述信息和所述时间段进行MD5计算,获得MD5值,所述MD5值作为所述发送信息标识。

可选地,所述时间段通过以下步骤获取:

把一段时间分成多个所述时间段,所述时间段的时长根据允许重复发送信息的时间间隔的时长进行设置;

获取接收到所述信息发送请求消息的时刻;

根据所述时刻,在所述多个所述时间段中进行匹配,获得匹配的所述时间段。

可选地,所述对所述发送信息标识增加分布式锁,包括以下步骤:

使用Redis数据库的setnx命令把所述发送信息标识存储到所述Redis数据库中;

如果存储成功,表示增加所述分布式锁成功;如果存储失败,表示增加所述分布式锁失败。

可选地,所述方法还包括以下步骤:

获取所述第二信息发送请求消息的所述时间段;

获取所述时间段的时长;

设置所述时长为所述setnx命令的超时时间。

可选地,所述方法还包括以下步骤:

接收所述第一信息发送请求消息后,对所述收方手机号码和所述信息进行合法性检测;

如果所述合法性检测失败,则丢弃所述第一信息发送请求消息;如果所述合法性检测成功,则继续进行后续步骤处理。

可选地,所述信息包括短信、彩信、视频短信中的至少一个。。

本实施例通过上述方案,通过对消息队列中的发送信息进行分布式锁,解决了多个短信平台线程或进程从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,控制器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种短信分发方法、装置及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类