场景
1、mongodb-cluster
2、爬虫将数据写入mongodb
3、更新频繁,每天千万左右
4、mongodb查询频繁,每天1000万左右
遇到的问题
查询经常卡住,查找原因,发现更新频繁的时候,查询缓慢
需求
1、将数据缓存到内存
2、缓存数据实时更新
3、qps 达到20000/s
解决方案
因为查询只是根据一个id进行key查询,且大部分数据的更新周期在一个月左右,可以设计一个缓存将数据全部缓存到内存当中
1、内存选择
redis-cluster
2、内容压缩方法
snappy,或者其他
3、数据实时更新方法
通过监控mongodb的
oplog.rs
达到实时更新
4、缓存时间
因为可以实时更新,所以缓存时间选择永久