You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
why技术 6ca90567cb The counter should start from 0. Otherwise, according to the program logic, even if the removethreadid method is called, the counter will not be reduced to 0.
Signed-off-by: why技术 <thisiswhy@outlook.com>
3 years ago
.github Update feature_request.md 4 years ago
redisson The counter should start from 0. Otherwise, according to the program logic, even if the removethreadid method is called, the counter will not be reduced to 0. 3 years ago
redisson-all [maven-release-plugin] prepare for next development iteration 3 years ago
redisson-helidon Update README.md 3 years ago
redisson-hibernate Update README.md 3 years ago
redisson-micronaut Update README.md 3 years ago
redisson-mybatis Update README.md 3 years ago
redisson-quarkus Update README.md 3 years ago
redisson-spring-boot-starter Update README.md 3 years ago
redisson-spring-data refactoring 3 years ago
redisson-tomcat Update README.md 3 years ago
.gitignore Remove duplicate items in `.gitignore` 4 years ago
CHANGELOG.md Update CHANGELOG.md 3 years ago
DCO.txt DCO file added 5 years ago
LICENSE.txt license updated 6 years ago
README.md Update README.md 3 years ago
checkstyle.xml checkstyle rules added 6 years ago
header.txt license updated 4 years ago
pom.xml [maven-release-plugin] prepare for next development iteration 3 years ago

README.md

Redisson - Redis Java client
with 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.
JDK compatibility: 1.8 - 18, Android

Features

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.17.1</version>
</dependency>  

Gradle

compile 'org.redisson:redisson:3.17.1'  

SBT

libraryDependencies += "org.redisson" % "redisson" % "3.17.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 ...

Try Redisson PRO with ultra-fast performance and support by SLA.

Downloads

Redisson 3.17.1, Redisson node 3.17.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?