Memcached, Redis, MongoDB区别
来源:互联网 发布:淘宝联盟佣金怎么获得 编辑:程序博客网 时间:2024/06/08 19:53
Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。
Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。
MongoDB是一个基于分布式文件存储的数据库,文档型的非关系型数据库,与上面两者不同。
1.性能上:
性能上都很出色,具体到细节,由于Redis只使用单核,而Memcached可以使用多核,所以平均每一个核上Redis在存储小数据时比Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis最近也在存储大数据的性能上进行优化,但是比起 Memcached,还是稍有逊色。
前两者性能差不多,大于 Mongodb。
2.内存空间和数据量大小:
MemCached可以修改最大内存,采用LRU算法。Redis增加了VM的特性,突破了物理内存的限制。
MongoDB 适合大数据量的存储,依赖操作系统 VM 做内存管理,吃内存也比较厉害,服务不要和别的服务在一起
3.操作便利上:
MemCached数据结构单一,仅用来缓存数据,而Redis支持更加丰富的数据类型,也可以在服务器端直接对数据进行丰富的操作,这样可以减少网络IO次数和数据体积。
Mongodb 支持丰富的数据表达,索引,最类似关系型数据库,支持的查询语言非常丰富。
4.可靠性上:
MemCached不支持数据持久化,断电或重启后数据消失,但其稳定性是有保证的。Redis支持数据持久化和数据恢复,允许单点故障,但是同时也会付出性能的代价。
MongoDB 从 1.8 版本开始采用 binlog 方式支持持久化的可靠性。
5.应用场景:
Memcached:动态系统中减轻数据库负载,提升性能;做缓存,适合多读少写,大数据量的情况(如人人网大量查询用户信息、好友信息、文章信息等)。
Redis:适用于对读写效率要求都很高,数据处理业务复杂和对安全性要求较高的系统(如新浪微博的计数和微博发布部分系统,对数据安全性、读写要求都很高)。
MongoDB:主要解决海量数据的访问效率问题。
6、数据一致性(事务支持)
Memcache 在并发场景下,用cas保证一致性
redis事务支持比较弱,只能保证事务中的每个操作连续执行
mongoDB不支持事务
需要慎重考虑的部分
1.Memcached单个key-value大小有限,一个value最大只支持1MB,而Redis最大支持512MB
2.Memcached只是个内存缓存,对可靠性无要求;而Redis更倾向于内存数据库,因此对对可靠性方面要求比较高
3.从本质上讲,Memcached只是一个单一key-value内存Cache;而Redis则是一个数据结构内存数据库,支持五种数据类型,因此Redis除单纯缓存作用外,还可以处理一些简单的逻辑运算,Redis不仅可以缓存,而且还可以作为数据库用
4.新版本(3.0)的Redis是指集群分布式,也就是说集群本身均衡客户端请求,各个节点可以交流,可拓展行、可维护性更强大。
5. MongoDB不支持事务。
阅读全文
1 0
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- Memcached, Redis, MongoDB区别
- MongoDB 或者 redis ,memcached区别
- Memcached,Redis, MongoDB的区别
- memcached,redis,mongodb的区别以及优缺点
- REDIS与MEMCACHED、mongoDB 的区别 对比
- REDIS与MEMCACHED、mongoDB 的区别 对比
- Redis、MongoDB及Memcached的区别
- Redis,MemCached,MongoDB 概述
- Redis,MemCached,MongoDB 概述
- Redis,MemCached,MongoDB 概述
- 虚拟机的安装
- 打乱数组排序
- 206. Reverse Linked List
- PHP的环境搭建(艰辛搭配经历,最后终于搭建好了。HTTP Error 404. The requested resource is not found.解决方法之一)
- java鬼混笔记:lucene 1、简单的创建索引和查询
- Memcached, Redis, MongoDB区别
- PageBean
- 总结-2017/9/24
- day13-json、ajax、cookie、RegExp
- 老司机给嵌入式新人的几点建议
- 用两个栈实现队列
- jdbc的连接中出现1405的情况
- Mybatis分页插件PageHelper简单使用
- 欢迎使用CSDN-markdown编辑器