Redisson 3.47.0 现已发布,这是一个 Java 编写的 Redis 客户端,具备驻内存数据网格(In-Memory Data Grid)功能,并获得了 Redis 的官方推荐。
此版本更新内容如下:
Feature
- 添加了ReliableFanout对象
- 添加了 processingMode 设置到
RReliableQueue配置
- 添加了监听器到
RReliableQueue对象
- 添加了 metrics 到
RReliableQueue对象
- 添加了
disableOperation()和enableOperation()方法到RReliableQueue对象
- 添加了
get()和getAll()方法到RReliableQueue对象
- 为 Spring Cloud Stream Binder 添加
pollBatchSize、visibilityTimeout和negativeAcknowledgeDelay消费者设置
RReliableQueue实现RDestroyable接口
- 为 RScoredSortedSet 添加
readDiffEntries()、readIntersectionEntries()、readUnionEntries()方法
- 添
valkeyCapabilities设置加
Improvement
- 如果 useScriptCache = true,则脚本记录错误消息
RReliableQueue数据结构优化
Fixed
- 如果
storeMode = LOCALCACHE,RClusteredLocalCachedMap.fastPut() 方法结果会导致 netty buffer leak
RReliableQueue.size()方法的结果不应包括延迟信息量
- Spring Cache.getNativeCache() 返回不正确的实例
- 修复了 RClusteredLocalCachedMap和RClusteredLocalCachedMapCache在“reconnectionStrategy = LOAD”时创建过多连接的问题。
- 修复了 RSetCache 的 readUnion()、readIntersection()、readDiff() 方法抛出异常的问题
- 在 Sentinel 模式下故障转移后,每次写操作都会打开新连接
- Micronaut 4.x 仅连接到单个节点
- RedisURI(String) constructor 未设置 hashCode
- Spring Data Redis
addMessageListener()方法在向同一主题或模式添加多个监听器时挂起的问题
- 检测
WAIT 和WAITAOF命令的可用性
- 当调用 closeCache() 时,JCacheManager 不会从 map 中移除缓存实例
- JCacheManager 在调用 closeCache() 时不会从映射中删除缓存实例
- pub/sub 连接不足可能导致内存泄漏
RMap.loadAll()方法可能在 Cluster 中挂起
None of slaves were synced抛出异常
- Spring Data Redis
ReactiveZSetCommands.zadd()默认参数
更新说明:https://github.com/redisson/redisson/releases/tag/redisson-3.47.0