5c68accab7 | 9 years ago | |
---|---|---|
src | 9 years ago | |
.gitignore | 11 years ago | |
CHANGELOG.md | 9 years ago | |
LICENSE.txt | 11 years ago | |
README.md | 9 years ago | |
checkstyle.xml | 11 years ago | |
header.txt | 11 years ago | |
pom.xml | 9 years ago |
README.md
Redisson - distributed and scalable Java data structures on top of Redis server. Advanced Java Redis client
Use familiar Java data structures with power of Redis.
Based on high-performance async and lock-free Java Redis client and Netty 4 framework.
Redis 2.8+ and JDK 1.6+ compatible.
Read wiki for more Redisson usage details.
Redisson releases history.
Licensed under the Apache License 2.0.
Features
- AWS ElastiCache servers mode:
- automatic new master server discovery
- automatic new slave servers discovery
- read data using slave servers, write data using master server
- Cluster servers mode:
- automatic master and slave discovery
- automatic new master server discovery
- automatic new slave servers discovery
- automatic slots change discovery
- read data using slave servers, write data using master server
- Sentinel servers mode:
- automatic master and slave servers discovery
- automatic new master server discovery
- automatic new slave servers discovery
- automatic slave servers offline/online discovery
- automatic sentinel servers discovery
- read data using slave servers, write data using master server
- Master with Slave servers mode: read data using slave servers, write data using master server
- Single server mode: read and write data using single server
- Lua scripting
- Distributed implementation of
java.util.BitSet
- Distributed implementation of
java.util.List
- Distributed implementation of
java.util.Set
with TTL support for each entry - Distributed implementation of
java.util.SortedSet
- Distributed implementation of
java.util.Queue
- Distributed implementation of
java.util.concurrent.BlockingQueue
- Distributed implementation of
java.util.Deque
- Distributed implementation of
java.util.concurrent.BlockingDeque
- Distributed implementation of
java.util.Map
with TTL support for each entry - Distributed implementation of
java.util.concurrent.ConcurrentMap
with TTL support for each entry - Distributed implementation of reentrant
java.util.concurrent.locks.Lock
with TTL support - Distributed implementation of reentrant
java.util.concurrent.locks.ReadWriteLock
with TTL support - Distributed alternative to the
java.util.concurrent.atomic.AtomicLong
- Distributed alternative to the
java.util.concurrent.CountDownLatch
- Distributed alternative to the
java.util.concurrent.Semaphore
- Distributed publish/subscribe messaging via
org.redisson.core.RTopic
- Distributed HyperLogLog via
org.redisson.core.RHyperLogLog
- Asynchronous interface for each object
- Thread-safe implementation
- All commands executes in an atomic way
- Supports Reactive Streams
- Supports Redis pipelining (command batches)
- Supports Android platform
- Supports auto-reconnect
- Supports failed to send command auto-retry
- Supports OSGi
- Supports many popular codecs (Jackson JSON, CBOR, MsgPack, Kryo, FST, LZ4, Snappy and JDK Serialization)
- With over 250 unit tests
Projects using Redisson
Setronica: setronica.com
Monits: monits.com
Brookhaven National Laboratory: bnl.gov
Netflix Dyno client: [dyno] (https://github.com/Netflix/dyno)
武林Q传:nbrpg
Ocous: ocous
Latest version changelog
####25-Dec-2015 - version 2.2.4 released
Please update to this version ASAP due to connection leak discovered in previous versions since Redisson 2.1.4.
Feature - new object added RBlockingDeque
Feature - new object added RSemaphore
Feature - RMapCache.fastPut
method with TTL support added
Feature - WeightedRoundRobinBalancer
slaves balancer added
Improvement - Memory consumption optimization
Improvement - storing value with ttl = 0 in RSetCache
or RMapCache
saves it infinitely
Fixed - reconnection handling when Sentinel servers are restarted
Fixed - RedisConnectionException should be throw if Redisson can't connect to servers at startup
Fixed - Connection leak (regression bug since 2.1.4)
Fixed - ConnectionWatchdog throws exception when eventloop in shutdown state
Fixed - RReadWriteLock.forceUnlock
works only for current thread
Fixed - MapKeyDecoder and MapValueDecoder are called in wrong order
Fixed - RReadWriteLock
doesn't work in cluster mode
Maven
Include the following to your dependency list:
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>2.2.4</version>
</dependency>
Gradle
compile 'org.redisson:redisson:2.2.4'
Supported by
YourKit is kindly supporting this open source project with its full-featured Java Profiler. YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at YourKit's leading software products: YourKit Java Profiler and YourKit .NET Profiler.