大型mongodb数据缓存集群设计

场景

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、缓存时间

因为可以实时更新,所以缓存时间选择永久

 

 

 

你可能感兴趣的:(web架构)