12、本地缓存&分布式缓存(未完待续)

1、哪些数据适合放入缓存?

  • 即时性、数据一致性要求不高的
  • 访问量大且更新频率不高的数据(读多,写少)

2、本地缓存

1、本地缓存,如果是单体项目,部署到一台服务器上,就不存在什么问题,如果项目是以分布式的方式部署的话,就存在问题了,就是每台服务器里面都自带一个本地缓存。
2、分布式缓存-本地模式在分布式下的问题
在这里插入图片描述
存在两个问题:
1)在分布式查询时,每次查询的服务器可能不同,而本地缓存只负责本台服务器的缓存,这样就会导致当请求路由到不同的服务器时,都需要先查询本地缓存,如果缓存没有,再去查询数据库,这样的操作同样会操作多次数据库。
2)如果某一个数据发生变化,例如A服务器,那么就会修改A服务器的缓存数据,但是下次再请求查询时可能会路由到B服务器,但是B服务器的本地缓存中的数据还是原来的脏数据,就会导致数据不一致的问题。

3、分布式缓存的正确使用姿势
**加粗样式**
使用缓存中间件的好处:
1)数据集中管理
2)当缓存数据量增大时,缓存中间件可以扩容【做集群】,数据可分片存储,打破了本地缓存的容量限制,实现高可用

3、整合Redis

1、整合步骤:
1)引入data-redis-stater依赖;
2)简单配置redis的host,password等信息;
3)使用SpringBoot自动配置好的StringRedisTemplate来操作Redis;

在这里插入图片描述
2、实际项目使用
在这里插入图片描述

4、压力测试

1、会产生堆外内存溢出:OutOfDirectMemoryError

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值