[发明专利]一种基于Redis的网络锁处理方法及设备有效

专利信息
申请号: 202011374843.X 申请日: 2020-11-30
公开(公告)号: CN112486694B 公开(公告)日: 2023-07-25
发明(设计)人: 张建彬 申请(专利权)人: 浪潮通用软件有限公司
主分类号: G06F9/52 分类号: G06F9/52;G06F16/23
代理公司: 北京君慧知识产权代理事务所(普通合伙) 11716 代理人: 董延丽
地址: 250101 山东省济*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 redis 网络 处理 方法 设备
【说明书】:

本申请公开了一种基于Redis的网络锁处理方法及设备,用以解决现有的线程锁、数据库锁及分布式锁处理方法,在分布式系统中多请求访问同一资源时,无法通过互斥防止彼此干扰来保证数据访问一致性的技术问题。方法包括:接收用户的业务操作请求;根据请求对应的业务操作的加锁参数,判断业务操作是否存在对应的互斥操作;确定业务操作对应的互斥操作未加锁的情况下,获取信号量;对业务操作加锁,并将加锁信息写入Redis中存储。本申请通过上述方法在业务操作存在对应的互斥操作时,进行并发控制,保证了同一时间同一业务操作只有一个用户在执行,防止了多请求访问同一资源时彼此的干扰,进而保证了数据访问的一致性。

技术领域

本申请涉及分布式并发控制技术领域,尤其涉及一种基于Redis的网络锁处理方法及设备。

背景技术

目前,为了实现资源共享、通信方便快捷、加快计算机速度、提高可靠性等需求,大多数应用都以分布式的方式进行部署。在常用的分布式系统中,多请求访问同一资源时,最重要的就是通过互斥防止彼此干扰保证数据访问的一致性。

为了解决访问数据不一致的问题,目前存在以下三种技术方案:

1.线程锁。在多个线程访问同一对象的加锁代码段时,同一时间只能有一个线程在执行,其余线程必须等待当前进程结束之后才能执行该代码段。但是,在分布式系统中,线程锁往往并不能支持全部场景的使用。

2.数据库锁。数据库在确定哪些行需要锁的情况下使用行锁,在不确定哪些行需要锁的情况下使用表锁。但是数据库锁不存在锁失效机制,在服务器宕机或者网络突然断开时,无法及时将异常情况下的锁释放。

3.分布式锁。当多个进程不在同一系统中时,分布式锁虽然可以控制多个进程对同一资源的访问,但是在集群模式下,基于Redlock算法设置锁失效的时间长短无法确定。若设置的时间太长,进程执行完锁还未释放,其他获取锁的进程就需要延长等待时间;若设置的时间太短,进程未执行完锁就自动释放了,这样会产生并发问题。因此,无法确定设置的锁失效时间的长短。同时,还无法保证基于Redlock算法的加锁过程的正确性。

发明内容

本申请实施例提供了一种基于Redis的网络锁处理方法及设备,用以解决现有的线程锁、数据库锁及分布式锁处理方法,在分布式系统中多请求访问同一资源时,无法通过互斥防止彼此干扰来保证数据访问的一致性的技术问题。

一方面,本申请实施例提供了一种基于Redis的网络锁处理方法,包括:接收用户的业务操作请求;根据请求对应的业务操作的加锁参数,判断业务操作是否存在对应的互斥操作;确定业务操作对应的互斥操作未加锁的情况下,获取信号量;对业务操作加锁,并将加锁信息写入Redis中存储。

在本申请的一种实现方式中,根据所述请求对应的业务操作的加锁参数,判断所述业务操作是否存在对应的互斥操作之前,还包括:基于网络控制配置信息表,获取所述业务操作的RedisMap数据;从所述RedisMap数据中,获取所述业务操作的加锁参数。

在本申请的一种实现方式中,获取信号量,具体包括:判断信号量是否存在;在信号量存在的情况下,确定所述业务操作未被加锁,获取所述信号量;在信号量不存在的情况下,确定所述业务操作已被加锁,退出等待;其中,首次执行所述业务操作时,初始化所述信号量并获取。

在本申请的一种实现方式中,对所述业务操作加锁之后,还包括:执行所述业务操作;在所述业务操作完成之后,接收所述业务操作的完成指令,对所述业务操作解锁。

在本申请的一种实现方式中,对所述业务操作加锁之后,还包括:确定所述业务操作开始执行时,对所述业务操作解锁。

在本申请的一种实现方式中,对所述业务操作加锁之后,还包括:确定所述业务操作已完成,且所述业务操作仍未解锁,对所述业务操作执行异常解锁操作。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011374843.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top