`
lfwer
  • 浏览: 86726 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

springboot集成redisson

 
阅读更多

添加依赖:

<dependency>
            <groupId>org.redisson</groupId>
            <artifactId>redisson</artifactId>
            <version>3.5.0</version>
        </dependency>

 

yml配置文件:

单机配置:redisson-single.yml

singleServerConfig:
  idleConnectionTimeout: 10000
  pingTimeout: 1000
  connectTimeout: 10000
  timeout: 3000
  retryAttempts: 3
  retryInterval: 1500
  reconnectionTimeout: 3000
  failedAttempts: 3
  password: 123456
  subscriptionsPerConnection: 5
  clientName: null
  address: "redis://192.168.200.64:6379"
  subscriptionConnectionMinimumIdleSize: 1
  subscriptionConnectionPoolSize: 50
  connectionMinimumIdleSize: 32
  connectionPoolSize: 64
  database: 0
  dnsMonitoring: false
  dnsMonitoringInterval: 5000
threads: 0
nettyThreads: 0
codec: !<org.redisson.codec.JsonJacksonCodec> {}
"transportMode":"NIO"

 

集群配置:redisson-cluster.yml

clusterServersConfig:
  idleConnectionTimeout: 10000
  pingTimeout: 1000
  connectTimeout: 10000
  timeout: 3000
  retryAttempts: 3
  retryInterval: 1500
  reconnectionTimeout: 3000
  failedAttempts: 3
  password: null
  subscriptionsPerConnection: 5
  clientName: null
  loadBalancer: !<org.redisson.connection.balancer.RoundRobinLoadBalancer> {}
  slaveSubscriptionConnectionMinimumIdleSize: 1
  slaveSubscriptionConnectionPoolSize: 50
  slaveConnectionMinimumIdleSize: 32
  slaveConnectionPoolSize: 64
  masterConnectionMinimumIdleSize: 32
  masterConnectionPoolSize: 64
  readMode: "SLAVE"
  nodeAddresses:
    "redis://redis-server:6371"
    "redis://redis-server:6372"
    "redis://redis-server:6373"
  scanInterval: 1000
threads: 0
nettyThreads: 0
codec: !<org.redisson.codec.JsonJacksonCodec> {}
"transportMode":"NIO"

 

注入bean,自动加载配置文件:

import org.redisson.Redisson;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;

import java.io.IOException;

@Configuration
public class RedissonConfig {

    @Value("${redisCluster}")
    private boolean redisCluster;

    @Bean
    public RedissonClient redissonClient() throws IOException {
        return Redisson.create(
                Config.fromYAML(new ClassPathResource("redisson-" + (redisCluster ? "cluster" : "single") + ".yml").getInputStream())
        );
    }
}

 

 使用:

@Component
public class test{

    @Autowired
    private RedissonClient redissonClient;
    
    
    public void test(){
        RLock lock= redissonClient.getLock("test");
         try {
                lock.lock();
                ......业务代码略
         } catch (Exception ex) {
                log.error("同步数据到中心失败", ex);
            } finally {
                lock.unlock();
            }

    }
}

 

分享到:
评论

相关推荐

    SpringBoot集成Redisson实现分布式锁的方法示例

    SpringBoot集成Redisson实现分布式锁的方法示例 分布式锁是一种机制,用于在分布式系统环境中,确保多个进程或线程在同一时间内,访问共享资源的安全性。SpringBoot集成Redisson是实现分布式锁的一种常用方法,下面...

    SpringBoot、SpringCloud的各种集成例子大全

    SpringBoot集成Redisson框架-实现Redis调用; 分布式服务框架Dubbo-基于注解配置的方式; 分布式服务框架Dubbo-基于XML配置的方式; 分布式服务框架Dubbo-事件通知; SpringCloud集成Consul框架-实现配置中心; Spring...

    springboot - 2.7.3版本 - (四)整合Redisson

    在redis的基础上添加redisson的使用,主要演示与springboot项目的整合

    springboot 集成Redission 简单完美解决分布式锁

    在分布式系统中,锁是确保数据一致...通过学习这个Redission-demo,你可以掌握SpringBoot集成Redisson的基本流程,并理解如何利用它来解决分布式锁问题。不断探索和实践,你将在分布式系统的设计和实现上更加得心应手。

    Springboot2.2.1版本集成Redisson急速入门与实践教程

    《SpringBoot2.2.1版本集成Redisson实践教程》 Redisson是一个强大的Java客户端,专为Redis设计,提供了丰富的数据结构支持,如分布式锁、队列、信号量、原子整数等,广泛应用于分布式系统中。在SpringBoot 2.2.1...

    springboot+jpa(hibernate配置redis为二级缓存) springboot2.1.4

    它集成了大量常用的第三方库配置,如数据源、JPA、定时任务等,使得开发者可以快速地构建应用。 JPA是Java平台上的ORM(Object-Relational Mapping)规范,它允许我们用面向对象的方式处理数据库操作。Hibernate是...

    dubbo-http-nacos_demo:dubbo_nacos_各种demo

    SpringBoot集成Redisson框架-实现Redis调用; Dubbo相关实例 分布式服务框架Dubbo-基于注解配置的方式; 分布式服务框架Dubbo-基于XML配置的方式; 分布式服务框架Dubbo-事件通知; 分布式服务框架Dubbo-异步调用; ...

    java springboot redisson mybatis maven.zip

    标题中的"java springboot redisson mybatis maven.zip"表明这是一个使用Java编程语言,基于Spring Boot框架,并结合Redisson、MyBatis以及Maven构建的项目。这个项目可能是一个Web应用,利用了Spring Boot的便利性...

    spring 问题总结实用知识库分享知识分享

    SpringBoot 集成 Redisson 提示:java.lang.ClassNotFoundException: .redis.connection.ReactiveRedisConnec 在使用 SpringBoot 集成 Redisson 时,可能会出现 ClassNotFoundException。解决方法是,检查应用程序...

    springboot集成redis ,mybatis

    首先,让我们详细探讨SpringBoot集成MyBatis。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。在SpringBoot中集成MyBatis,我们通常会创建一个配置类,配置数据源、SqlSessionFactory和...

    springboot_redis

    标题 "springboot_redis" 涉及的是Spring Boot与Redis集成的应用。Spring Boot是Spring框架的一个简化版,它旨在简化创建独立的、生产级别的基于Spring的应用程序。而Redis是一款高性能的键值对数据库,常被用作缓存...

    redis 哨兵(sentinel)与springboot集成实战-redis-sentinel.zip

    将Redis Sentinel与SpringBoot集成,可以实现高效、可靠的缓存服务。下面我们将深入探讨这两个技术的结合及其实战应用。 1. Redis Sentinel系统架构: Redis Sentinel系统通常由多个Sentinel节点组成,它们共同...

    基于Spring AOP 的声明式和编程式分布式锁,支持RedisTemplate、Redisson、Zookeeper

    在本项目中,"基于Spring AOP 的声明式和编程式分布式锁,支持RedisTemplate、Redisson、Zookeeper" 提供了一种灵活且高效的解决方案。 首先,我们要理解Spring AOP(面向切面编程)的概念。AOP允许开发者定义“切...

    SpringBoot集成Redis哨兵Demo

    总结来说,SpringBoot集成Redis哨兵提供了一种简单有效的方式,确保应用能够连接到高可用的Redis集群,并在主服务器出现问题时自动切换,保持服务的连续性。通过正确配置和使用,可以显著提升系统的稳定性和可靠性。

    Spring Boot集成Redisson实现延迟队列

    使用Redisson的RDelayedQueue来实现延迟队列的,Redisson是基于Redis的,所以只要有redis中间件就行了。 采用的是多线程来处理延迟队列的,在设计延迟任务时,我们应该根据实际需求来合理设置延迟时间,避免设置过长...

    SpringBoot 整合 Redis、mybatis 完整项目源码下载

    2. **添加依赖**: 在`pom.xml`文件中添加Spring Data Redis和Redisson(或Jedis)的依赖,它们是SpringBoot与Redis交互的客户端库。 3. **RedisTemplate与StringRedisTemplate**: SpringBoot提供了这两个模板类,...

    boot-single:boot-single基于SpringBoot2.0.2版本,结合项目实用的技术点。采用技术:Redisson,SolrCloud,RedisCluster,ElasticJob,Druid,Mybatis,Freemarker等,帮助您急速上手使用SpringBoot。【QQ群:759111321,作者QQ

    boot-single基于SpringBoot2.0.2版本,集成项目中常用的功能点。默认配置下,用户仅需要自己配置单机mysql和redis组件,就可以快速启动项目。 技术选型 ● 系统核心框架:SpringBoot ● 定时任务调度:ElasticJob+...

    Redis框架Jedis及Redisson对比解析

    Redis框架Jedis及Redisson对比解析 Redis是一个开源的、基于内存的数据存储系统,通常用于实现缓存、消息队列、分布式锁等功能。随着Redis的广泛应用,Java开发者需要选择合适的Redis客户端框架来实现与Redis的...

    springboot-api-demo:springboot开发脚手架

    详细包括:如何优雅加压,弃用tomcat容器改用undertow,连接数据库, redis, 重新定义,使用thymeleaf模板做视图,使用mybatis通用地图,♡okhttp,弹性工作轻,集成分布式锁redisson,集成h2数据库等等,方便开发...

    springboot高级-后8章-源码、资料、课件.rar

    6. **分布式系统**:在分布式环境中,SpringBoot支持分布式会话(例如RedisSession)、分布式锁(如Redisson)和服务发现(如Netflix Eureka、Consul或Zookeeper)。这些技术有助于构建高可用和可扩展的应用。 7. *...

Global site tag (gtag.js) - Google Analytics