类似于朋友圈,当大量用户拉feed时,是不是需要一个缓存来放置最新的数据呢?
应该选择Redis 还是Memcached 呢?
如果选择redis,是不是不能和mongodb放在同一个服务器上?
“if you put MongoDB and Redis on the same box and MongoDB data do not fit in memory, MongoDB will “steal” memory to Redis via the OS paging mechanism. The consequence is a major performance drop for Redis.”
缓存里应该存什么?存所有的原始数据吗??还是只存_id字段之类的??
如果你的后端是使用node.js的话,那么使用mongoDB作为主数据库。
如果需要缓存的数据结构,比较多,复杂,则使用Redis。
如果比较简单,没有特别的功能,就使用Memcached。
不过我强烈推荐使用Redis。
Redis可以和你的主数据库在同一台服务器上,也可以不同,这个根据你自己的意向
至于缓存,当然是你需要缓存什么就缓存什么。你如果只缓存_id,那还是需要去mongoDB中查询的。
比如:你朋友圈的朋友都有备注名,你觉得每次根据好友关系去查备注名,那你可以把这部分数据放到Redis中,就避免去主数据库中查。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。