分布式锁Redisson的使用
文章目录
- 高性能分布式锁-redisson的使用
- 1、官方文档
- 2、项目集成
- 3、配置Redisson
- 4、锁的获取和释放
- 5、业务逻辑中使用分布式锁
高性能分布式锁-redisson的使用
1、官方文档
https://github.com/redisson/redisson/wiki/2.-%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95
2、项目集成
<dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>2.7.0</version></dependency>
3、配置Redisson
public class RedissonManager {private static Config config = new Config();//声明redisso对象private static Redisson redisson = null;//实例化redisson static{ config.useSingleServer().setAddress("127.0.0.1:6379");//得到redisson对象redisson = (Redisson) Redisson.create(config);}//获取redisson对象的方法public static Redisson getRedisson(){return redisson;}
}
4、锁的获取和释放
public class DistributedRedisLock {//从配置类中获取redisson对象private static Redisson redisson = RedissonManager.getRedisson();private static final String LOCK_TITLE = "redisLock_";//加锁public static boolean acquire(String lockName){//声明key对象String key = LOCK_TITLE + lockName;//获取锁对象RLock mylock = redisson.getLock(key);//加锁,并且设置锁过期时间,防止死锁的产生mylock.lock(2, TimeUnit.MINUTES); System.err.println("======lock======"+Thread.currentThread().getName());//加锁成功return true;}//锁的释放public static void release(String lockName){//必须是和加锁时的同一个keyString key = LOCK_TITLE + lockName;//获取所对象RLock mylock = redisson.getLock(key);//释放锁(解锁)mylock.unlock();System.err.println("======unlock======"+Thread.currentThread().getName());}
}
5、业务逻辑中使用分布式锁
@RequestMapping("/redder")
@ResponseBody
public String redder() throws IOException{String key = "test123";//加锁 DistributedRedisLock.acquire(key);//执行具体业务逻辑//...........//释放锁DistributedRedisLock.release(key);//返回结果return soming;
}
分布式锁Redisson的使用相关推荐
- 高性能分布式锁-redisson
RedLock算法-使用redis实现分布式锁服务 译自Redis官方文档 在多线程共享临界资源的场景下,分布式锁是一种非常重要的组件. 许多库使用不同的方式使用redis实现一个分布式锁管理. 其中 ...
- 分布式锁 - Redisson的看门狗(watchdog)机制
分布式锁 - Redisson的看门狗(watchdog)机制 前言 本篇文章从Redisson的加锁(tryLock)入手,带大家由源码来了解一下watchdog的自动延迟加锁操作,如果对Redis ...
- 分布式锁-Redisson快速入门
分布式锁-Redisson快速入门 一.引入依赖 二.配置Redisson客户端 三.使用Redisson的分布式锁 一.引入依赖 <dependency><groupId>o ...
- 分布式锁redisson的使用 看门狗原理
redisson 能干嘛 为什么要用分布式锁 redisson ,不用分布式锁 redisson 我们需要解决哪些问题? 单机版的服务使用Synchronize和Lock是没问题的,如果一上集群,每个 ...
- Redis分布式锁Redisson
文章目录 分布式锁 不可重入Redis分布式锁 Redisson 快速入门 可重入的Redis分布式锁 Redisson的multiLock 分布式锁 分布式锁:满足分布式系统或集群模式下多进程可见并 ...
- redis 分布式锁 看门狗_分布式锁Redisson的使用,看门狗机制
Redisson简介 Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid).它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式 ...
- 分布式锁-Redisson
目录 1.分布式并发问题 2.如何解决分布式并发问题呢 ? 3.使⽤Redis实现分布式锁-代码实现 4.解决因线程异常导致⽆法释放锁的问题 5.解决因t1过期释放t2锁的问题 6.看⻔狗机制 7.分 ...
- 缓存-分布式锁-Redisson简介整合
Redisson分布式 GitHub中文文档 概念:是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid).它不仅提供了一系列的分布式的Java常用对象,还提 ...
- 分布式锁——Redisson
1.安装redis a.由于官方是没有Windows版的,所以我们需要下载微软开发的redis,网址:https://github.com/MicrosoftArchive/redis/release ...
最新文章
- 虚拟化如何做实?详解戴尔2.0版解决方案
- 从STGW流量下降探秘内核收包机制
- C语言 PK 各大编程语言
- linux下编译ios,为iOS安装OpenCV
- Centos7搭建Java环境,并设置项目自启动脚本、定时数据库备份/日志清理脚本
- volte 是什么意思
- 假设检验与区间估计的异同
- 一分钟了解阿里云产品:安骑士
- 申请与认证IB课程全流程
- 开关量模块——一对多无线传输
- Linux系统 查看系统版本、CPU、内存、主频等信息
- 初涉VB.NET入门级代码积累
- ZN-61A网络型PLC可编程控制器实训装置
- 使用狸窝全能视频转换器实现给视频添加水印
- java模拟新浪微博_Java模拟新浪微博用户注册
- Mysql导出表结构到excel
- 2021最新MySQL数据库面试题
- 二 、C语言程序的基本语句和基本结构
- 【Activiti7】什么是工作流?
- 139邮箱smtp地址和端口_常用的邮箱服务器(SMTP、POP3)地址、端口
热门文章
- 键盘全部变快捷键处理方式
- PT857 Winserver 2012 DPK安装报错 api-ms-win-crt-runtime-l1-1-0.dll错误
- Ghostery – 隐私广告拦截工具
- [CF590E]Birthday
- 企业行业培训讲座在线观看目录
- 从互联网时代进入物联网时代
- php 打卡考勤,p-data.php
- Background Matting-v1
- html静态网站基于品优购电商购物网站网页设计与实现共计3个页面 html+css+javascript网页设计实例 企业网站制作
- macbook控制已经运行的Chrome浏览器