前言
Redis作为当前最火的NoSQL数据库,支持很多语言客户端操作Redis。

而SpringBoot作为java当前最火的开发框架,提供了Spring-data-redis框架实现对Redis的各种操作。
在springboot1.5.x版本的默认的Redis客户端都是Jedis实现的,springboot 2.x版本中默认的客户端是用lettuce实现的。
Lettuce和Jedis的都是连接Redis Server的客户端,Jedis在实现上是直连redis Server,多线程环境下非线程安全,除非使用连接池,为每个redis实例增加物理连接。
Lettuce是一种可伸缩,线程安全,完全非阻塞的Redis客户端,多个线程可以共享一个RedisConnection,它利用Netty NIO框架来高效地管理多个连接,从而提供了异步和同步数据访问方式,用于构建非阻塞的反应性应用程序。

Spring Data Redis
Spring Data Redis是较大的Spring Data系列的一部分,可轻松配置并从Spring应用程序访问Redis。它提供了与商店交互的低层和高层抽象,使用户摆脱了基础设施方面的顾虑。
特性
- 连接包是跨多个Redis驱动程序(Lettuce和Jedis)的低级抽象
- 将Redis驱动程序异常转换为Spring的可移植数据访问异常层次结构
- RedisTemplate提供了用于执行各种Redis操作,异常转换和序列号支持的高级抽象
- Pubsub支持(例如,消息驱动的POJO的MessageListenerContainer)
- Redis Sentinel和Redis Cluster支持。
- 使用Lettuce驱动程序的反应性API
- JDK,String,JSON和Spring Object / XML映射序列化器
- Redis之上的JDK Collection实现。
- 原子计数器支持类
- 排序和流水线功能
- 专门支持SORT,SORT/GET模式和返回的批量值
- Spring 3.1缓存抽象的Redis实现
- Repository接口的自动实现,包括

最低0.47元/天 解锁文章
6521





