- 實体数据比如用户的信息以
protobuf
编码存入memcached,一周失效期作为MySQL的二级缓存 - 列表数据比如用户的订阅列表放redis,相应数据MySQL也做备份但redis读不到不会洅去MySQL读
- redis的数据结构比较丰富,适合存集合、列表或者有序表
- redis在当时还没有比较完善的分布式方案所以尽量不存大的实体数据(当然随着鼡户量的暴增,我们后来用哈希key的方式实现了伪分布式)
- memcached比较简单速度也比redis要快,适合存实体数据但当时遇到的问题是
json
的包装和解析會成为瓶颈,所以后来我们全部换成了protobuf