这篇文章主要介绍了Redis和Memcache的区别,用三个总结来说明Redis和Memcache的区别,需要的朋友可以参考下

总结一:

memcache官方定义

Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.

redis官方定义

Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

版权相同

它们都是使用的bsd协议,使用它的项目可以用于商业用户,不必发布二次修改的代码,可以修改源代码。

数据类型

redis数据类型丰富,支持set liset等类型
memcache支持简单数据类型,需要客户端自己处理复杂对象

持久性

redis支持数据落地持久化存储
memcache不支持数据持久存储

分布式存储

redis支持master-slave复制模式
memcache可以使用一致性hash做分布式

value大小不同

memcache是一个内存缓存,key的长度小于250字符,单个item存储要小于1M,不适合虚拟机使用

数据一致性不同

redis使用的是单线程模型,保证了数据按顺序提交。
memcache需要使用cas保证数据一致性。CAS(Check and Set)是一个确保并发一致性的机制,属于“乐观锁”范畴;原理很简单:拿版本号,操作,对比版本号,如果一致就操作,不一致就放弃任何操作

cpu利用

redis单线程模型只能使用一个cpu,可以开启多个redis进程

总结二:

1.Redis中,并不是所有的数据都一直存储在内存中的,这是和Memcached相比一个最大的区别。
2.Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。
3.Redis支持数据的备份,即master-slave模式的数据备份。
4.Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
我个人认为最本质的不同是Redis在很多方面具备数据库的特征,或者说就是一个数据库系统,而Memcached只是简单的K/V缓存

总结三:

redis和memecache的不同在于:

1、存储方式:
memecache 把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小
redis有部份存在硬盘上,这样能保证数据的持久性。
2、数据支持类型:
redis在数据支持上要比memecache多的多。
3、使用底层模型不同:
新版本的redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。
4、运行环境不同:
redis目前官方只支持LINUX 上去行,从而省去了对于其它系统的支持,这样的话可以更好的把精力用于本系统 环境上的优化,虽然后来微软有一个小组为其写了补丁。但是没有放到主干上

memcache只能当做缓存,cache
redis的内容是可以落地的,就是说跟mongodb有些类似,然后redis也可以作为缓存,并且可以设置master-slave

5、数据分析
mongoDB内置了数据分析的功能(mapreduce),其他不支持
6、应用场景
redis:数据量较小的更性能操作和运算上
memcache:用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能(适合读多写少,对于数据量比较大,可以采用sharding)
MongoDB:主要解决海量数据的访问效率问题

Redis 和 memcached 区别相关推荐

  1. oracle定时器定时删除30天前的数据_Redis-数据淘汰策略持久化方式(RDB/AOF)Redis与Memcached区别...

    Redis与Memcached区别: 两者都是非关系型数据库.主要有以下不同: 数据类型: Memcached仅支持字符串类型. redis支持:String,List,set,zset,hash 可 ...

  2. redis 存储数据不设置过期时间 会自动过期吗_Redis-数据淘汰策略持久化方式(RDB/AOF)Redis与Memcached区别...

    Redis与Memcached区别: 两者都是非关系型数据库.主要有以下不同: 数据类型: Memcached仅支持字符串类型. redis支持:String,List,set,zset,hash 可 ...

  3. 定时器取数据时实时进来的数据_Redis-数据淘汰策略amp;持久化方式(RDB/AOF)amp;Redis与Memcached区别...

    Redis与Memcached区别: 两者都是非关系型数据库.主要有以下不同: 数据类型: Memcached仅支持字符串类型. redis支持:String,List,set,zset,hash 可 ...

  4. redis与memcached区别

    不同点: (1) redis中并不是所有数据在有效期内只能常驻内存的(如果需要,可定期同步持久化到磁盘),这是和memcached相比一个最大的区别(memcached中的数据在有效期内是以键值对的形 ...

  5. redis 和 memcached

    1.redis 和 memcached区别 redis支持更丰富的数据类型(支持更复杂的应用场景):Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构 ...

  6. redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?...

    这个是问 redis 的时候,最基本的问题吧,redis 最基本的一个内部原理和特点,就是 redis 实际上是个单线程工作模型, 你要是这个都不知道,那后面玩儿 redis 的时候,出了问题岂不是什 ...

  7. Redis 和 Memcached 的区别

    来源:标点符 链接:http://www.biaodianfu.com/redis-vs-memcached.html Redis 的作者 Salvatore Sanfilippo 曾经对这两种基于内 ...

  8. redis和Memcached的区别,都什么时候使用?

    redis和Memcached的区别,都什么时候使用? 缓存在互联网公司占得比例还是蛮大的,提到缓存呢,就一定会想到redis和memcache,现在绝大多数的公司呢,都是推荐使用redis,这是为什 ...

  9. redis和memcached的区别(总结)

    来源:https://www.cnblogs.com/457248499-qq-com/p/7392653.html  redis和memcached的区别(总结) 观点一: 1.Redis和Memc ...

  10. 面试前必看:Redis 和 Memcached 的区别

    Redis 的作者 Salvatore Sanfilippo 曾经对这两种基于内存的数据存储系统进行过比较: Redis支持服务器端的数据操作:Redis相比Memcached来说,拥有更多的数据结构 ...

最新文章

  1. package main: read unexpected NUL in input
  2. Mockito 101
  3. 机器学习模型 非线性模型_机器学习:通过预测菲亚特500的价格来观察线性模型的工作原理...
  4. 90后就敢当扫地僧!不服?4月24号来闯龙门阵!
  5. UVA669 LA5662 Defragment【暴力】
  6. Linux守护进程的启动方法
  7. PHP------- 继承
  8. Powershell About Active Directory Server
  9. Latex 的基本语法
  10. lbochs模拟器最新版_Bochs模拟器
  11. VBS基础教程(收藏)
  12. 欺骗的艺术——第二部分(6)
  13. 结巴分词 java_Java版结巴分词自定义词库
  14. 对话月薪10万的技术老兵:技术人如何开心工作、快乐赚钱?
  15. 2017南京大学计算机考研复试分,2018.的南大复试考生,:2017南京大学中国古代史考研复试经...
  16. 鸡尾酒问题,最小二乘法和范数的思考
  17. keil stm32标准库放在哪里_使用Keil MDK以及标准外设库创建STM32工程
  18. mysql中高阶玩法系列(七)
  19. FTP主动连接、被动连接、连接端口的分配与使用、误区总结
  20. windows 上使用mongrel

热门文章

  1. 【前端】相信你会用到的一篇笔记---CSS篇(1)
  2. 2018 ideal 链接数据_利用 IDEA HTTP 请求文件访问 API 接口
  3. 高德地图定位误差_导航定位错误致拥堵,四川景区建议别用高德地图 高德回应...
  4. python 伪多线程_从伪并行的 Python 多线程说起
  5. nyoj 最强DE 战斗力 (数论入门)
  6. 大数阶乘 nyoj28
  7. 【总结】前缀和与差分(一维差分、二维差分、树上差分(待学!))
  8. 【UVA11059】Maximum Product(set+set默认从大到小排列---水题)
  9. linux定时器无法重启pm2,在linux下开机启动pm2 不成功
  10. 弹性地基梁板的计算理论_龚晓南院士:30年创新实践,为地基处理开出“良方”...