SpringBoot
【黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)】
SpringBoot 开发实用篇
文章目录
- SpringBoot
- SpringBoot 开发实用篇
- 4 数据层解决方案
- 4.7 SpringBoot 操作 Redis 客户端实现技术切换【jedis】
- 4.7.1 问题引入
- 4.7.2 SpringBoot 操作redis 客户端实现技术切换
- 4.7.3 小结
4 数据层解决方案
4.7 SpringBoot 操作 Redis 客户端实现技术切换【jedis】
4.7.1 问题引入
之前我们已经区分开了 以对象的形式 和 以字符串的形式 的 redis 客户端。
这两个其实是一类东西,不过一个抽象点儿,一个具体点儿
我们在操作redis 客户端的时候,有一个传统技术叫作 jedis ,在咱们的测试中,有用到这种技术吗?
4.7.2 SpringBoot 操作redis 客户端实现技术切换
先看看配置
可以看到有那么一组配置
【其实默认不是用的jedis 技术】
现在如果想用jedis ,先导坐标
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
不需要输入版本号,说明Springboot 已经收录了这个东西
配置
现在就切换成jedis 了【默认是lettuce】
现在直接运行一下测试
可以看到还是顺利拿到了
可以把配置都加上
spring:
redis:
host: localhost
port: 6379
client-type: jedis
lettuce:
pool:
max-active: 16
jedis:
pool:
max-active: 16
回顾一下
-
配置客户端专用属性
lettcus与jedis区别:
- jedis连接Redis服务器是直连模式,当多线程模式下使用jedis会存在线程安全问题,解决方案可以通过配置连接池使每个连接专用,这样整体性能就大受影响。
- lettcus基于Netty框架进行与Redis服务器连接,底层设计中采用StatefulRedisConnection。 StatefulRedisConnection自身是线程安全的,可以保障并发访问安全问题,所以一个连接可以被多线程复用。当然lettcus也支持多连接实例一起工作。
4.7.3 小结
- SpringBoot整合Redis客户端选择
- lettuce(默认)
- jedis