Quick start | Documentation | Javadocs | Changelog | Code examples | FAQs | Report an issue | Redisson PRO
Based on high-performance async and lock-free Java Redis client and Netty framework.
Stable Release Version |
Release Date | JDK Version compatibility |
CompletionStage support |
ProjectReactor versioncompatibility |
---|---|---|---|---|
3.10.2 | 07.02.2019 | 1.8 - 11, Android | Yes | 3.x.x |
2.15.2 | 07.02.2019 | 1.6 - 11, Android | No | 2.0.8 |
- Replicated Redis servers mode (also supports AWS ElastiCache and Azure Redis Cache):
- automatic master server change discovery
- Clustered Redis servers mode (also supports AWS ElastiCache Cluster and Azure Redis Cache):
- automatic master and slave servers discovery
- automatic status and topology update
- automatic slots change discovery
- Sentinel Redis servers mode:
- automatic master, slave and sentinel servers discovery
- automatic status and topology update
- Master with Slave Redis servers mode
- Single Redis server mode
- Thread-safe implementation
- Reactive Streams API
- Asynchronous API
- Asynchronous connection pool
- Lua scripting
- Distributed Java objects
Object holder, Binary stream holder, Geospatial holder, BitSet, AtomicLong, AtomicDouble, PublishSubscribe, Bloom filter, HyperLogLog - Distributed Java collections
Map, Multimap, Set, List, SortedSet, ScoredSortedSet, LexSortedSet, Queue, Deque, Blocking Queue, Bounded Blocking Queue, Blocking Deque, Delayed Queue, Priority Queue, Priority Deque - Distributed Java locks and synchronizers
Lock, FairLock, MultiLock, RedLock, ReadWriteLock, Semaphore, PermitExpirableSemaphore, CountDownLatch - Distributed services
Remote service, Live Object service, Executor service, Scheduler service, MapReduce service - Spring Framework
- Spring Cache implementation
- Spring Transaction API implementation
- Spring Data Redis integration
- Spring Boot Starter implementation
- Hibernate Cache implementation
- Transactions API
- XA Transaction API implementation
- JCache API (JSR-107) implementation
- Tomcat Session Manager implementation
- Spring Session implementation
- Redis pipelining (command batches)
- Supports Android platform
- Supports auto-reconnection
- Supports failed to send command auto-retry
- Supports OSGi
- Supports SSL
- Supports many popular codecs (Jackson JSON, Avro, Smile, CBOR, MsgPack, Kryo, Amazon Ion, FST, LZ4, Snappy and JDK Serialization)
- With over 1800 unit tests
Logos, product names and all other trademarks displayed on this page belong to their respective holders and used for identification purposes only. Use of these trademarks, names and brands does not imply endorsement.
<!-- JDK 1.8+ compatible -->
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>3.10.2</version>
</dependency>
<!-- JDK 1.6+ compatible -->
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>2.15.2</version>
</dependency>
// JDK 1.8+ compatible
compile 'org.redisson:redisson:3.10.2'
// JDK 1.6+ compatible
compile 'org.redisson:redisson:2.15.2'
// 1. Create config object
Config = ...
// 2. Create Redisson instance
RedissonClient redisson = Redisson.create(config);
// 3. Get Redis based object or service you need
RMap<MyKey, MyValue> map = redisson.getMap("myMap");
RLock lock = redisson.getLock("myLock");
RExecutorService executor = redisson.getExecutorService("myExecutorService");
// over 30 different Redis based objects and services ...
Please consider Redisson PRO version for advanced features and support by SLA.
Redisson 3.10.2, Redisson node 3.10.2
Redisson 2.15.2, Redisson node 2.15.2
Q: I saw a RedisTimeOutException, What does it mean? What shall I do? Can Redisson Team fix it?
Q: There were too many quotes appeared in the redis-cli console output, how do I fix it?
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?