分布式的redis 作为缓存
1.回顾
上一节讲到 缓存,分本地缓存、分布式缓存
本地缓存在单体应用可以,但是在分布式项目就不行了。
在分布式项目必须使用缓存
笔记: 缓存-本地缓存+分布式缓存
使用redis作为分布式项目的缓存
redis作为缓存优点
■ 高可用(多个redis集群)
■ 数据库分片(数据库分库、分表)**
2.springboot整合redis
redis依赖
spring-boot-starter-data-redis
1).使用redis
@Autowired
StringRedisTemplate stringRedisTempalte;
//测试redis
@Test
public void redis() {
ValueOperations<String, String> ops = stringRedisTempalte.opsForValue();
//保存数据到redis
ops.set("hello","hello_"+ UUID.randomUUID().toString());
//从redis获取数据
String s = ops.get("hello");
System.out.println(s);
}
2).优化获取分类数据–把数据放入redis
3).测试
3.问题 OutOfDirectMemoryError:堆外内存溢出
1).原因:
2).解决方法:使用jedis操作redis
4.jedis操作redis
1).依赖
<!--spring整合redis依赖,排除lettuce-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--导入jedis依赖-->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>