Redisson

Redisson - 具有内存数据网格功能的简易 Redis Java 客户端。Sync/Async/RxJava/Reactive API。50 多种基于 Redis 的 Java 对象和服务:Set、Multimap、SortedSet、Map、List、Queue、Deque、Semaphore、Lock、AtomicLong、Map Reduce、Bloom filter、Spring Cache、Tomcat、Scheduler、JCache API、Hibernate、RPC、本地缓存……「Redisson - Easy Redis Java client with features of In-Memory Data Grid. Sync/Async/RxJava/Reactive API. Over 50 Redis based Java objects and services: Set, Multimap, SortedSet, Map, List, Queue, Deque, Semaphore, Lock, AtomicLong, Map Reduce, Bloom filter, Spring Cache, Tomcat, Scheduler, JCache API, Hibernate, RPC, local cache ...」

Github星跟踪图

Redisson - Easy Redis Java clientwith features of an in-memory data grid

Maven Central
JavaDoc
License

Quick start | Documentation | Changelog | Code examples | FAQs | Report an issue

Based on high-performance async and lock-free Java Redis client and Netty framework.
Supported JDK: 1.8 ... 21 and Android
Supported Redis: 3.0 ... 7.2

Features

Comparing solutions

Redisson vs Jedis

Redisson vs Lettuce

Redis vs Apache Ignite

Redis vs Hazelcast

Redis vs Ehcache

Success stories

Moving from Hazelcast to Redis / Datorama

Migrating from Hazelcast to Redis / Halodoc

Distributed Locking with Redis (Migration from Hazelcast) / ContaAzul

Migrating from Coherence to Redis

Quick start

Maven

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

Gradle

compile 'org.redisson:redisson:3.27.1'  

SBT

libraryDependencies += "org.redisson" % "redisson" % "3.27.1"

Java

// 1. Create config object
Config config = new Config();
config.useClusterServers()
       // use "rediss://" for SSL connection
      .addNodeAddress("redis://127.0.0.1:7181");

// or read config from file
config = Config.fromYAML(new File("config-file.yaml")); 
// 2. Create Redisson instance

// Sync and Async API
RedissonClient redisson = Redisson.create(config);

// Reactive API
RedissonReactiveClient redissonReactive = redisson.reactive();

// RxJava3 API
RedissonRxClient redissonRx = redisson.rxJava();
// 3. Get Redis based implementation of java.util.concurrent.ConcurrentMap
RMap<MyKey, MyValue> map = redisson.getMap("myMap");

RMapReactive<MyKey, MyValue> mapReactive = redissonReactive.getMap("myMap");

RMapRx<MyKey, MyValue> mapRx = redissonRx.getMap("myMap");
// 4. Get Redis based implementation of java.util.concurrent.locks.Lock
RLock lock = redisson.getLock("myLock");

RLockReactive lockReactive = redissonReactive.getLock("myLock");

RLockRx lockRx = redissonRx.getLock("myLock");
// 4. Get Redis based implementation of java.util.concurrent.ExecutorService
RExecutorService executor = redisson.getExecutorService("myExecutorService");

// over 50 Redis based Java objects and services ...

Upgrade to Redisson PRO with advanced features.

Downloads

Redisson 3.27.1,
Redisson node 3.27.1

FAQs

Q: What is the cause of RedisTimeoutException?

Q: When do I need to shut down a Redisson instance, at the end of each request or the end of the life of a thread?

Q: In MapCache/SetCache/SpringCache/JCache, I have set an expiry time to an entry, why is it still in Redis when it should be disappeared?

Q: How can I perform Pipelining/Transaction through Redisson?

Q: Is Redisson thread safe? Can I share an instance of it between different threads?

Q: Can I use different encoder/decoders for different tasks?

主要指标

概览
名称与所有者redisson/redisson
主编程语言Java
编程语言Java (语言数: 1)
平台
许可证Apache License 2.0
所有者活动
创建于2014-01-11 14:06:25
推送于2025-06-05 15:47:18
最后一次提交2025-06-05 18:47:14
发布数256
最新版本名称redisson-3.49.0 (发布于 2025-06-04 11:10:00)
第一版名称redisson-1.0.0 (发布于 2014-01-17 20:45:46)
用户参与
星数23.8k
关注者数872
派生数5.4k
提交数10.5k
已启用问题?
问题数5535
打开的问题数259
拉请求数577
打开的拉请求数48
关闭的拉请求数329
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?