缓存架构的设计思路


缓存的整体设计思路包括: 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的用户的评论,原始的表的数据结构显然是不行的。 我们应做如下设计: key:UID+时间戳(精确到天) 评论一般以天为计算单位 value:Redis的Hash类型。field为 id和content expire:设置为一天

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/290655.html

(0)
上一篇 2022年10月5日 19:53
下一篇 2022年10月5日 19:53

相关推荐

发表回复

登录后才能评论