Redisson 3.9.1 和 2.14.1 已发布,Redisson 是架设在 Redis 基础上的一个 Java 驻内存数据网格(In-Memory Data Grid)。
Redisson
在基于 NIO 的 Netty 框架上,充分利用了 Redis 键值数据库提供的一系列优势,在 Java
实用工具包中常用接口的基础上,为使用者提供了一系列具有分布式特性的常用工具类。使得原本作为协调单机多线程并发程序的工具包获得了协调分布式多机多线程并发系统的能力,大大降低了设计和研发大规模分布式系统的难度。同时结合各富特色的分布式服务,更进一步简化了分布式环境中程序相互之间的协作。
Feature - takeFirstElements
and takeLastElements
streaming methods added to RBlockingDequeRx
Feature - RBlockingQueueRx.takeElements
streaming method added
Feature - RTopicRx.getMessages
streaming method added
Feature - async methods for listener removal added to RTopic
object
Feature - RxJava2 method call cancellation support added
Feature - RObject.getSizeInMemory
method added
Feature - RTopic.countListeners
method added
Feature - takeFirstElements
and takeLastElements
added to RScoredSortedSetReactive
and RScoredSortedSetRx
objects
Feature - takeFirst
and takeLast
methods added to RScoredSortedSet
object
Feature - readGroup
method variations added to RStream
object
Feature - remove
, trim
, fastClaim
, removeGroup
, removeConsumer
, updateGroupMessageId
methods added to RStream
object
Improvement - JCache performance optimization up to 2x times
Improvement - Redis url validation
Fixed - Exception serialization by Jackson codec
Fixed - DNS channels aren't pooled
Fixed - RStream commands don't work with Redis 5.0.1 version
Fixed - task scheduled with cron pattern isn't executed with single worker
Fixed - Spring Boot Starter doesn't convert properly list of sentinel addresses
Fixed - RTopic
and all objects based on it stop work properly if Subscribe timeout occured
Fixed - JDK 1.6 compatibility for 2.x version
Fixed - IPv6 addresses format support for Sentinel mode (thanks to Mikhail Surin)
Fixed - null value handling for Spring Boot Starter's timeoutValue
setting (Thanks to junwu215177)
Fixed - OOM during RLocalCachedMap.fastPut
method invocation and Reference based EvictionPolicy is used
Fixed - exception in CommandDecoder while using PubSub with ping
Fixed - RTopic.removeAllListeners
invocation leads to PubSub connections leak
Fixed - all methods of RSemaphoreRx
and RAtomicDoubleRx
objects should return Flowable
object
Fixed - Redisson.createRx
method should return RedissonRxClient