Memcached VS Redis

  问题:memcached 与 redis 哪个好?

  答:这个问题它依赖与工程类别和它的数据。

  1.它们都是内存 key/value 类型的高速与高可用的查询表。

  2.它们都是集群。

  3.它们都是为大项目提供内存对象而不需要去访问数据仓库。

  4.访问它们,要比访问数据仓库有更快的速度。

  

  从原理上讲:

    它们的部署环境与规模架构不一样。

    memcached:

      memcached 是扁平数组 由一个hash值共享(我理解是一个hashid 决定一个扁平数组数据

    redis:

      redis 是 cluster-slave 架构,

  下面有张图,可以反映出它们的原理与架构:

    

     创造一个技术与架构设计是非常难的,尤其是很重要的缓存结构。

     下面几个部分是一些它们的有点与缺点:

        memcached 优点:

          1.不复杂

          2.配置简单

          3.宏观命令很少,单个主机。

          4.在集群中,使用单主机,使用hash值去查找key。(易于理解,结构简单)

          5.像摇滚音乐一样工作(翻译的无语,) , 原句: Runs like a rock -- memcached requires a nuclear strike to fall over

          6.很多年的老产品,

          7。很多开发语言都有memcached库

        memcached缺点:

          1.只有内存缓存功能,别的什么功能都没有

          2.不能通过 AWS zons 共享缓存。

          3.不能满足一个主机系统的所有缓存需求

          4.添加一个集群成员需要从新配置和重启客户端。

        redis优点:

          1.可以用多种方式存放缓存,比如list,array,sets,sorted sets

          2.可以同时操作多个流水线命令行

          3.阻塞读取。

          4.可以批量插入缓存数据。

          5.可以通过多个slave redis实例划分缓存。

          6.可以把数据推到硬盘里。

        redis缺点:

          1.配置复杂。

          2.守护进程,当从变主后,它会自动失去备原功能,这在不稳定的redis分支上是持久性的。

          3.主从架构意味着如果主进程出现故障,守护进程将不能工作,导致系统不能正常工作。

          4.需要很多系统管理员去监控redis,去分配,去均衡。

  

  

  

memcached与redis的更多相关文章

  1. Memcached vs Redis

    Memcached和Redis哪一个能有更好的表现? Redis可以看作是Memcached的超集,这让Redis不仅仅可以用来当缓存,也可以作为实际的数据存储. 强大的数据结构以及操作命令. 默认持 ...

  2. 谈谈Memcached与Redis

    1. Memcached简介 Memcached是以LiveJurnal旗下Danga Interactive公司的Bard Fitzpatric为首开发的高性能分布式内存缓存服务器.其本质上就是一个 ...

  3. Memcached和Redis对比和适用场景

    关于memcached和redis的使用场景,根据大神们的讨论和我在网上查到的资料,总结一下: 两者对比: redis提供数据持久化功能,memcached无持久化: redis的数据结构比memca ...

  4. Memcached、Redis OR Tair

    一.前言 非关系型数据库(NoSQL = Not Only SQL)的产品非常多,常见的有Memcached.Redis.MongoDB等优秀开源项目,相关概念和资料网上也非常丰富,不再重复描述,本文 ...

  5. Memcached 及 Redis 架构分析和比较

    Memcached和Redis作为两种Inmemory的key-value数据库,在设计和思想方面有着很多共通的地方,功能和应用方面在很多场合下(作为分布式缓存服务器使用等) 也很相似,在这里把两者放 ...

  6. Memcached、Redis和MongoDB的区别

    Memcached和Redis都是内存数据库. Memcached是多线程运行的: Redis单线程是单线程运行的: MongoDB是文档型的非关系型数据库..Net:RavenDB.

  7. memcached与redis 对比

    一. 综述 读一个软件的源码,首先要弄懂软件是用作干什么的,那memcached和redis是干啥的?众所周知,数据一般会放在数据库中,但是查询数据会相对比较慢,特别是用户很多时,频繁的查询,需要耗费 ...

  8. Memcached和Redis异同

    在考虑对应用程序的性能表现进行提升时,缓存机制往往是解决问题的重要起点,而Memcached与Redis则经常被作为初步方案来加以比较.这两套声名显赫的缓存引擎拥有着诸多相似之处,但它们同样也具备大量 ...

  9. Memcached和Redis简介

    前言: 目前比较流行的缓存技术无疑是Memcached和Redis,两套缓存技术有着诸多的相似之处,但又具备大量的显著差异,作为新生的方案,Redis被视为首选,但是有些场景Memcached发挥的作 ...

随机推荐

  1. hdu 1011 Starship Troopers (树形背包dp)

    本文出自   http://blog.csdn.net/shuangde800 题目链接 : hdu-1011   题意 有n个洞穴编号为1-n,洞穴间有通道,形成了一个n-1条边的树, 洞穴的入口即 ...

  2. 经典:十步完全理解 SQL

    经典:十步完全理解 SQL   来源:伯乐在线 链接:http://blog.jobbole.com/55086/ 很多程序员视 SQL 为洪水猛兽.SQL 是一种为数不多的声明性语言,它的运行方式完 ...

  3. xcode7 没有Empty Application

    如果你想创建xcode6.01之前版本提供的空工程,其实很简单.1:选择模板 Single View Application2:选中 Main.storyboard,将其删除3:选择项目的 plist ...

  4. leetcode Binary Tree Inorder Traversal python

    # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x): # self.val = ...

  5. 【转】MUD教程--巫师入门教程1

    <新巫师入门手册> 第一章:观念篇■ 内容提要:什么是巫师?怎样做一个巫师?如何做好一个巫师? 第二章:上手篇■ 内容提要:最简单的房间怎么写?NPC又怎么写?先看懂一些常用的参数? 第三 ...

  6. codeforces 21D. Traveling Graph 状压dp

    题目链接 题目大意: 给一个无向图, n个点m条边, 每条边有权值, 问你从1出发, 每条边至少走一次, 最终回到点1. 所走的距离最短是多少. 如果这个图是一个欧拉回路, 即所有点的度数为偶数. 那 ...

  7. c语言中的制表符\t与空格

    (本文不讨论制表符与空格缩进问题) 编程过程中,我们常常用多个空格或制表符分隔两个字符串,那么这两个在显示效果上有什么区别呢? 比较如下两行代码的输出效果 代码1: printf("1\t1 ...

  8. 1.5 外部销售自动创建为内部PR

    1.5          外部销售自动创建为内部PR 1.5.1   业务方案描述 外部销售订单登记后,在销售订单录入界面点击一个创建内部申请按钮,自动将外部销售订单创建为内部申请,创建后将不得再次创 ...

  9. windows环境中mysql忘记root密码的解决办法

    原文地址:http://www.cnblogs.com/linuxnotes/archive/2013/03/09/2951101.html windows下重置Mysql Root密码的方法mysq ...

  10. Apriori算法

    APRIORI Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集.而且算法已经被广泛的应用到商业.网络安全等各个领域. Apri ...