Redisson 简介

摘要

Redisson 的官方定位

  • ✅ 面向 Valkey / Redis 的 Java 客户端

  • ✅ 同时也是一个 实时数据平台(Real-Time Data Platform)

  • ✅ 提供 高级抽象 + 分布式能力扩展

可以理解为:Redisson = Redis Java Client + 分布式对象平台 + 高级并发语义

  • 它并不是简单替代 Jedis / Lettuce,而是:

    • 在 Redis 之上构建了一层 面向对象的分布式抽象模型
    • 把 Redis 从“命令型数据库”提升为“分布式数据结构与服务平台”。

Redisson vs Jedis
Redisson vs Lettuce

  • Redisson 在 Java 代码与 Redis 命令之间增加了一层抽象,其带来的价值:

价值 说明
屏蔽命令细节 不再直接拼 Redis 命令
面向对象建模 Map / Set / Lock / Queue
语义更稳定 不依赖命令细节
降低学习成本 Java 开发者无需深度理解 Redis 协议
提升可维护性 业务代码更清晰

Redisson 扩展的能力

  • 分布式集合(Distributed Collections)

1
2
3
4
特点:
数据存储在 Redis
语义与 Java 集合一致
支持分布式并发访问
Redisson 对象 类比 Java
RMap Map
RSet Set
RList List
RQueue Queue
RDeque Deque
RSortedSet SortedSet
RBlockingQueue BlockingQueue
  • 分布式对象(Distributed Objects)

对象 语义
RAtomicLong 分布式原子计数
RBucket 单值对象,如:RedissonBucket,RedissonJsonBucket
RBitSet 位集合
RBloomFilter 布隆过滤器
RHyperLogLog 基数统计
  • 分布式服务(Distributed Services)

1
2
3
4
这是 Redisson 真正的核心竞争力。
这些能力:
Redis 原生并不直接提供
Redisson 通过 Lua + 状态机 + Watchdog 实现
服务 解决问题
RLock 分布式锁
RFairLock 公平锁
RReadWriteLock 读写锁
RSemaphore 信号量
RCountDownLatch 闭锁
RRateLimiter 限流
RDelayedQueue 延迟队列
RExecutorService 分布式线程池
  • 命令映射能力(Command Mapping)

1
2
3
4
5
6
7
Redisson 提供:
Redis Command → Redisson API 映射表

用途:
从命令式思维过渡到对象式 API
快速定位功能接口
验证底层实现机制
Redis 类型 Redisson 对象
String RBucket, RAtomicLong, RBitSet
Hash RMap, RMapCache
List RList, RQueue, RBlockingQueue
Set RSet, RSetCache
ZSet RScoredSortedSet, RPriorityQueue
Bitmap RBitSet
HyperLogLog RHyperLogLog
Geo RGeo
Stream RStream
PubSub RTopic
JSON RJSONBucket
Vector(Redis8+) RVectorSet

RedisTemplate VS Redisson

  • 结论先行:

1
2
3
✅ 如果你只是把 Redis 当作 KV / Cache / 简单数据结构存储 → 优先使用 RedisTemplate
✅ 如果你需要分布式能力(锁、限流、队列、同步器、原子对象) → 优先使用 RedissonClient
❗在复杂系统中,两者可以同时存在,各司其职
  • 核心定位差异

维度 RedisTemplate RedissonClient
抽象层级 Redis 原生命令封装 分布式对象与同步器
编程模型 Command-oriented Object-oriented
关注点 数据访问 分布式协调
功能粒度 String / Hash / List / ZSet Map / Lock / Semaphore / Queue
一致性保障 需要自己设计 内置实现
业务语义 偏底层 偏业务
  • 性能与稳定性对比

在“纯 KV 访问”场景下,RedisTemplate 的性能通常优于 Redisson。

维度 RedisTemplate Redisson
延迟 更低 略高(对象封装)
吞吐 更高 略低
内存开销 最小 较高
网络请求 精简 可能多次交互
稳定性 极高 高(依赖内部状态机)
排障复杂度 中~高
  • ✅ 实际生产中的最佳实践: ✔️ 两者共存,而不是二选一。

功能 技术
缓存 / 查询 RedisTemplate
分布式锁 Redisson
延迟队列 Redisson
原子计数 RedisTemplate 或 Redisson Atomic
搜索 / 时序 RedisTemplate