/redisson

Redisson - distributed and scalable Java objects (Bloom filter, BitSet, Set, ScoredSortedSet, SortedSet, Map, ConcurrentMap, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, ReadWriteLock, AtomicLong, CountDownLatch, Publish / Subscribe, HyperLogLog), Redis pipelining on top of Redis server. Java Redis client.

Primary LanguageJavaApache License 2.0Apache-2.0

Redisson - distributed and scalable Java objects powered by Redis. Advanced Java Redis client

Maven Central

##Please take part in Redisson survey

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.

Please read documentation for more details.
Redisson releases history.

Licensed under the Apache License 2.0.

Welcome to support chat - Join the chat at https://gitter.im/mrniko/redisson

Features

  • AWS ElastiCache servers mode:
    1. automatic new master server discovery
    2. automatic new slave servers discovery
    3. read data using slave servers, write data using master server
  • Cluster servers mode:
    1. automatic master and slave discovery
    2. automatic new master server discovery
    3. automatic new slave servers discovery
    4. automatic slots change discovery
    5. read data using slave servers, write data using master server
  • Sentinel servers mode:
    1. automatic master and slave servers discovery
    2. automatic new master server discovery
    3. automatic new slave servers discovery
    4. automatic slave servers offline/online discovery
    5. automatic sentinel servers discovery
    6. 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
  • Asynchronous connection pool
  • Thread-safe implementation
  • All commands executes in an atomic way
  • Spring cache integration
  • 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 500 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.com
Ocous: ocous.com
Invaluable: invaluable.com

Maven

Include the following to your dependency list:

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

Gradle

compile 'org.redisson:redisson:2.2.8'

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.