当前位置: 首页 > news >正文

Redisson介绍和入门使用

一、什么是Redisson?

        Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务,其中就包含了各种分布式锁的实现。

官网地址: https://redisson.org

GitHub地址: https://github.com/redisson/redisson

二、入门使用

1.引入依赖

<!--        引入Redisson-->
        <dependency>
            <groupId>org.redisson</groupId>
            <artifactId>redisson</artifactId>
            <version>3.18.0</version>
        </dependency>

2.配置Redisson客户端

@Configuration
public class RedisConfig {

    @Bean
    public RedissonClient redissonClient(){
        //配置类对象
        Config config = new Config();
        // 添加redis地址,这里添加了单点的地址,也可以使用config.useClusterServers()添加集群地址
        config.useSingleServer().setAddress("redis://127.0.0.1:6379").setPassword("0516");
        //创建客户端
        return Redisson.create(config);
    }
}

3.使用Redisson的分布式锁

    @Autowired
    private RedissonClient redissonClient;

    public void testLock() throws InterruptedException {
        //获取锁(可重入) 指定锁的名称
        RLock lock = redissonClient.getLock("lockName");
        //尝试获取锁 参数: 获取锁的最大等待时间(等待的时候会重试) 锁自动释放时间 时间单位
        boolean isLock = lock.tryLock(1, 10, TimeUnit.SECONDS);

        //判断获取锁是否成功
        if(isLock){//成功
            try {
                System.out.println("加锁成功,执行业务逻辑");
            }finally {
                //释放锁
                lock.unlock();
            }
        }

    }

http://www.dtcms.com/a/14284.html

相关文章:

  • 二十六、使用docsify搭建文档管理平台
  • Docker 镜像推送到远程仓库
  • 2021年全国研究生数学建模竞赛华为杯E题信号干扰下的超宽带(UWB)精确定位问题求解全过程文档及程序
  • 说下JVM中一次完整的GC流程?
  • 亚信安全正式接入DeepSeek
  • CentOS搭建PPPOE服务器
  • 机器学习所需要的数学知识【01】
  • Django 创建第一个项目
  • ComfyUI流程图生图原理详解
  • 2025.2.13 Android Studio下载安装配置教程(详细版)
  • 我用AI做数据分析之四种堆叠聚合模型的比较
  • 【devops】 Git仓库如何fork一个私有仓库到自己的私有仓库 | git fork 私有仓库
  • 【git-hub项目:YOLOs-CPP】本地实现01:项目构建
  • ASP.NET Core SignalR实践指南
  • 如何利用Vuex的插件来记录和追踪状态变化?
  • 【DeepSeek】Deepseek辅组编程-通过卫星轨道计算终端距离、相对速度和多普勒频移
  • DFS+回溯+剪枝(深度优先搜索)——搜索算法
  • 如何从0开始将vscode源码编译、运行、打包桌面APP
  • 基于华为云镜像加速器的Docker环境搭建与项目部署指南
  • 【Antv G2 5.x】饼图添加点击事件,获取当前坐标数据
  • Docker 网络的几种常见类型
  • 【腾讯地图】录入经纬度功能 - 支持地图选点
  • MYSQL的管理备份
  • SpringBoot里,什么是状态机?在商城系统的订单管理业务上如何应用?
  • golang下载安装图文教程(Linux环境)
  • 机器学习 - 理论和定理
  • 前端骨架怎样实现
  • 【DeepSeek】DeepSeek概述 | 本地部署deepseek
  • DeepSeek笔记(一):本地部署DeepSeek R1并搭建Web UI实现可视化交互的笔记
  • 开源模型应用落地-Qwen1.5-MoE-A2.7B-Chat与vllm实现推理加速的正确姿势(一)