[发明专利]一种基于分布式锁的信息发送方法、装置及存储介质有效
申请号: | 202110959704.1 | 申请日: | 2021-08-20 |
公开(公告)号: | CN113794998B | 公开(公告)日: | 2022-07-15 |
发明(设计)人: | 李铁擎 | 申请(专利权)人: | 上海德吾信息科技有限公司 |
主分类号: | H04W4/14 | 分类号: | H04W4/14;H04W28/02 |
代理公司: | 深圳市易美诺知识产权代理事务所(普通合伙) 44520 | 代理人: | 沈荣彬 |
地址: | 200082 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 分布式 信息 发送 方法 装置 存储 介质 | ||
本发明公开了一种基于分布式锁的信息发送方法、装置及存储介质,方法包括:接收第一信息发送请求消息,包括接收方手机号码和信息;根据接收方手机号码、信息和时间段,生成发送信息标识;保存接收方手机号码、信息、时间段和发送信息标识到第二信息发送请求消息;发送第二信息发送请求消息给消息队列;从消息队列获取第二信息发送请求消息;对发送信息标识增加分布式锁,如果增加分布式锁成功,则发送信息给接收方手机号码。通过本发明实施例,解决了多个短信平台实例从消息队列中发送短信存在重复发送相同短信给用户的问题,减少了短信发送费用、避免用户收到多个相同的短信,从而提高了用户体验。
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于分布式锁的信息发送方法、装置及存储介质。
背景技术
越来越多的公司都有自己的短信服务平台,用于管理公司内部所有的短信发送业务。为了应对短信发送的高并发请求,短信平台通常会采用消息队列,以将短信发送申请的处理和短信发送服务商分隔开,这样即使遇到突发大流量的状况,也可以先将短信发送信息暂时存放在消息队列中进行缓存,之后再逐个进行处理,从而保障了短信平台的高可用。但是消息队列有个经常会遇到的问题,即同一条数据的重复消费问题,这样导致同一个手机号码会由于消息的重复消费导致收到了多条同样的内容,这不仅会影响短信平台的可靠性,也会造成很大的经济损失,同时也会影响用户体验。
发明内容
本发明的主要目的在于提供一种基于分布式锁的信息发送方法、装置及存储介质,旨在解决现有技术中通过消息队列发送短信遇到的同一条数据重复消费问题,从而使同一个手机号码由于消息的重复消费导致收到了多条同样的内容,这不仅会影响短信平台的可靠性,也会造成很大的经济损失,同时也会影响用户体验。
为实现上述目的,本发明提供了一种基于分布式锁的信息发送方法,所述方法包括以下步骤:
接收第一信息发送请求消息,所述第一信息发送请求消息包括接收方手机号码和信息;
根据所述接收方手机号码、所述信息和时间段,生成发送信息标识;
保存所述接收方手机号码、所述信息、所述时间段和所述发送信息标识到第二信息发送请求消息;
发送所述第二信息发送请求消息给消息队列;
从所述消息队列获取所述第二信息发送请求消息;
对所述发送信息标识增加分布式锁;如果增加所述分布式锁成功,则发送所述信息给所述接收方手机号码;如果增加所述分布式锁失败,则不发送所述信息给所述接收方手机号码。
可选地,所述生成发送信息标识,通过以下步骤实现:
对所述接收方手机号码、所述信息和所述时间段进行MD5计算,获得MD5值,所述MD5值作为所述发送信息标识。
可选地,所述时间段通过以下步骤获取:
把一段时间分成多个所述时间段,所述时间段的时长根据允许重复发送信息的时间间隔的时长进行设置;
获取接收到所述信息发送请求消息的时刻;
根据所述时刻,在所述多个所述时间段中进行匹配,获得匹配的所述时间段。
可选地,所述对所述发送信息标识增加分布式锁,包括以下步骤:
使用Redis数据库的setnx命令把所述发送信息标识存储到所述Redis数据库中;
如果存储成功,表示增加所述分布式锁成功;如果存储失败,表示增加所述分布式锁失败。
可选地,所述方法还包括以下步骤:
获取所述第二信息发送请求消息的所述时间段;
获取所述时间段的时长;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海德吾信息科技有限公司,未经上海德吾信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110959704.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信号强度测量方法及设备
- 下一篇:一种谐波减速器健康评估方法及装置
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置