华为云分布式缓存Redis5.0Memcached都是华为云DCS的核心产品。

那么在不同的使用场景之下,如何选择Redis5.0和Memcached呢?

就由小编为大家进行详细的数据对比分析吧

Redis和Memcached都是非常受欢迎的开源内存数据库,相对关系型数据库,Redis和Memcached使用都简单,且具备高性能。

同为Key-Value数据库,我们该如何选择?

表1-1 Redis与Memcached的对比概览

对比项

Redis

Memcached

延时

内存数据库,亚毫秒级延时。

内存数据库,亚毫秒级延时。

易用性

语法简单,易用性强。

语法简单,易用性强。

分布式存储

支持集群方式水平扩展。

支持。

多语言客户端

支持Java、C、Python等三十几种语言的客户端连接。

支持Java、C、Python等十几语言的客户端连接。

线程/进程

单核单线程。

单线程通信,避免不必要的上下文切换与竞争。

采用非阻塞IO(IO多路复用),减少多客户端连接时的资源消耗。

支持多线程,可扩展。

可通过增加CPU数量,提升Memcached性能。

在key的value较大的场景中,性能优势较明显。

持久化存储

支持。

可将每一次写入操作(数据的增加、删除、修改)记录到磁盘文件(AOF文件)中。

不支持。

数据结构

支持哈希、列表、集合、有序集合等复杂的数据结构。有更多的应用场景

支持简单的字符串。

Lua脚本支持

支持。

不支持。

快照备份

支持。

快照定期产生,因此不能保证数据100%不丢失。

Redis会fork一个子进程用于生成快照,当数据较多时,可能产生Redis服务短暂中断。

不支持。

数据迁移

支持。

可通过RDB快照恢复,或者AOF文件回放的方式,将数据备份并迁移到新的Redis实例上。

不支持,因为不支持将数据备份、持久化存储。

由于不需要处理持久化,Memcached的数据处理效率更高。

Key的Value限制

Key的值最大可以有1G。

1M

由以上对比可知,Redis与Memcached都具有简单易用,性能优越的特点。但在数据结构存储、持久化、备份与迁移、脚本支持等方面有所差异,建议您结合实际应用场景,选择最合适的缓存引擎。

文章内容来自华为云帮助中心

该用哪个:Redis与Memcached之间如何选择呢?的更多相关文章

  1. redis和memcached缓存

    memcached memcache开源的,高性能,高并发分布式内存缓存系统,天生支持集群 memcached下载地址: http://memcached.org/downloads python实现 ...

  2. Redis与Memcached的区别

    传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量 ...

  3. Redis和Memcached的区别详解

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/119.html?1455855360 Redis的作者Salvatore ...

  4. Redis和Memcached的区别

    From: https://www.biaodianfu.com/redis-vs-memcached.html Redis的作者Salvatore Sanfilippo曾经对这两种基于内存的数据存储 ...

  5. 白话Redis与Memcached区别

    如果简单地比较Redis与Memcached的区别,外在的区别是: 1  Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储. 2  Redis ...

  6. 也谈谈 Redis 和 Memcached 的区别

    本文作者: 伯乐在线 - 朱小厮 . 说到redis就会联想到memcached,反之亦然.了解过两者的同学有那么个大致的印象: redis与memcached相比,比仅支持简单的key-value数 ...

  7. 【转载】Redis与Memcached的区别

    传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量 ...

  8. Redis 和 Memcached 的区别

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

  9. Redis 和 Memcached 的区别详解

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

随机推荐

  1. MongoDB常用指令

    db 查看当前操作的数据库 show dbs 显示所有数据库 show collections 显示当前数据库下的所有集合 use database_name 连接到一个名叫[database_nam ...

  2. 协议类接口 - NAND

    一.引脚的含义 先看下nand flash是怎么接的,如下所示便为某一款nand存储芯片的引脚图.发现其连地址信号都没有.那么是如何访问地址数据的呢? 查阅该nand flash的数据手册可得其各个引 ...

  3. Java Activiti6.0 spring5 SSM 工作流引擎 审批流程 java项目框架

    1.模型管理 :web在线流程设计器.预览流程xml.导出xml.部署流程 2.流程管理 :导入导出流程资源文件.查看流程图.根据流程实例反射出流程模型.激活挂起 3.运行中流程:查看流程信息.当前任 ...

  4. 【2017 ICPC亚洲区域赛北京站 J】Pangu and Stones(区间dp)

    In Chinese mythology, Pangu is the first living being and the creator of the sky and the earth. He w ...

  5. Ubuntu16.04 解决matplotlib乱码或者中文显示不了的问题(可用)

    一. 下载字体 SimHei.ttf 复制到linux字体库中 sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf 二.查看matplotlib配置 In ...

  6. Ubuntu18.04挂载exfat格式移动硬盘

    1.安装exfat-fuse 命令:sudo apt-get install exfat-fuse 2.重新插拔移动硬盘,即可识别 查看挂载命令:lsblk

  7. transfrom、transition、animation区别

    transfrom transform是静态属性,非动画属性,和margin-left.margin-top类似. translate:平移,类似position:relative;translate ...

  8. .net下redis和rabbitmq简单使用demo

    是参考 一下两篇博文整理了下. Redis:   https://www.cnblogs.com/5ishare/p/6492380.html RabbitMq:   https://www.cnbl ...

  9. C语言中const有什么用途

    自己上网查的资料. 可以定义const常量,具有不可变性.例如:const int Max=100; Max++会产生错误; 便于进行类型检查,使编译器对处理内容有更多了解,消除了一些隐患.例如: v ...

  10. RUBY惯用方法(转)

    RUBY惯用方法 目录 迭代 ||=赋值 程序入口 预设变量和特殊记号 inject 并行赋值 *的匹配 rescue简单用法 命名参数的默认值 精细duck typing控制 获取metaclass ...