缓存架构的设计思路

本文探讨了缓存架构的设计思路,包括多层次缓存确保服务稳定性,根据数据类型选择Memcached或Redis,构建分布式缓存集群如RedisCluster,并强调了数据结构设计的重要性,如与数据库表一致或不一致的情况,通过实例展示了如何优化设计以提高效率。
摘要由CSDN通过智能技术生成

缓存的整体设计思路包括:
1、多层次
在这里插入图片描述
分布式缓存宕机,本地缓存还可以使用

2、数据类型

简单数据类型

Value是字符串或整数或二进制,Value的值比较大(大于100K),只进行setter和getter,可采用Memcached。Memcached纯内存缓存,多线程 K-V。

复杂数据类型

Value是hash、set、list、zset,需要存储关系,聚合,计算,可采用Redis。

3、要做集群

分布式缓存集群方案(Redis)
codis
哨兵+主从
RedisCluster

4、缓存的数据结构设计

1、与数据库表一致
数据库表和缓存是一一对应的
缓存的字段会比数据库表少一些
缓存的数据是经常访问的
用户表,商品表

2、与数据库表不一致
需要存储关系,聚合,计算等
比如某个用户的帖子、用户的评论。
以用户评论为例,DB结构如下:
在这里插入图片描述
如果要取出UID为1000的用户的评论,原始的表的数据结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值