为了提高网站性能,一般都会使用到缓存,缓存的数据源包括数据库,外部接口等,缓存一般分为两种,本地缓存和分布式缓存,这里主要总结的是分布式缓存。

Memcached vs Redis

最常用的分布式缓存是Redis和Memcached,它们都是分布式缓存技术中的一种,可能大部分的开发人员都听说或者接触过,但是很少有人认真分析它们之间有什么不同,以及使用场景。

Memcached是 我们从以下几个方面对它们进行比较。

网络IO模型

Memcached是多线程处理。

Redis是单线程处理。

内存管理机制

Memcached是使用预分配的内存池的方式。

Redis是现场申请内存的方式。

支持的数据类型

Memcached仅支持key/value。

Redis除了支持key/value外,还支持list,set,sorted Set和Hash,支持的数据类型更丰富。

持久化

Memcached不支持持久化的。

Redis支持持久化,有两种持久化策略:基于RDB快照和AOF日志。

集群

Memcached和Redis都支持集群部署。

性能

由于Memcached使用多线程,所以总体上性能要优于Redis。

应用场景

通过上面这几方面的比较,基本上可以确定它们的应用场景:

1,首先Memcached和Redis都可以作为分布式缓存实现技术中的一种。

2,如果需要支持除key/value外更多的数据类型,请选择Redis。

3,如果需要支持数据的持久化,请选择Redis。

4,如果对缓存性能要求极高,请考虑Memcached。

中间件(1)分布式缓存相关推荐

  1. 分布式缓存中间件:Redis

    Redis 是一个高性能的key-value数据库. redis的出现,很大程度补偿了memcached这类key-value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用.它提供了Pyt ...

  2. 大厂都拿捏的缓存方案,平台级分布式缓存,什么业务才合适?

    所有程序猿都对那缓存并不陌生,好似那风一样的女子只为你独自而舞.只见那回眸一笑百媚生,让你甚是吝惜,惹人怜爱. 但随着项目规模不断增大变强,光是单个缓存就难以招架,优而显得力不从心. 这时伴随着多级缓 ...

  3. Net平台下的分布式缓存设计

    缓存真是个好东西,在大型的系统中可以有效地提升系统的速度,此乃废话就不多说了,在.Net 平台下面我把缓存从功用大致分为两类,数据对象缓存和页面输出缓存.对于数据缓存来讲是由System.Web.Ca ...

  4. 从中间件到分布式数据库生态,ShardingSphere 5.x革新变旧

    距离最后一个 4.x 版本的发布时间已半年有余,在此期间, Apache ShardingSphere 社区对产品不断的打磨和优化,并在刚刚过去的双十一前夕发布了其 5.x 的首个版本-- 5.0.0 ...

  5. [.NET领域驱动设计实战系列]专题八:DDD案例:网上书店分布式消息队列和分布式缓存的实现...

    原文:[.NET领域驱动设计实战系列]专题八:DDD案例:网上书店分布式消息队列和分布式缓存的实现 一.引言 在上一专题中,商家发货和用户确认收货功能引入了消息队列来实现的,引入消息队列的好处可以保证 ...

  6. 揭秘!双11万亿流量下的分布式缓存系统 Tair

    阿里妹导读:本文以双11面临的挑战为背景,从Tair(阿里自研高速缓存系统)发展和应用开始谈起,重点分享了性能优化方面的实践,最后对缓存热点难题给出了解决方案,希望能对大家的工作有所启发. 本文作者为 ...

  7. 分布式缓存memcached

    Memcached是一款开源.高性能.分布式内存对象缓存系统,可应用各种需要缓存的场景,其主要目的是通过降低对数据库的访问来加速web应用程序.它是一个基于内存的"键值对"存储,用 ...

  8. 分布式缓存的25个优秀实践与线上案例 done

    杨彪,蚂蚁金服技术专家,<分布式服务架构:原理.设计与实战>和<可伸缩服务架构:框架与中间件>作者.近10年互联网和游戏行业工作经验. 本文节选自即将出版的<可伸缩服务架 ...

  9. 双11万亿流量下的分布式缓存

    摘要: 12月13-14日,由云栖社区与阿里巴巴技术协会共同主办的<2017阿里巴巴双11技术十二讲>顺利结束,集中为大家分享了2017双11背后的黑科技.本文是<双11万亿流量下的 ...

最新文章

  1. JAVA 静态变量与静态方法
  2. web release (bat tool)
  3. loj #6053 简单的函数 min_25筛
  4. POJ 2778 DNA Sequence (AC自动机+矩阵快速幂)
  5. 男人别让爱你的女孩流泪
  6. Debian 8 时间同步
  7. 华为手机root过程
  8. 前端写出优雅的代码,融会贯通es6
  9. Q2增收不增利,“怪兽”无法给自己“充电”
  10. Python代码对英语标点后面缺空格的情况自动补空格
  11. 医疗保健客户关系管理(CRM)-市场现状及未来发展趋势
  12. 如何用matlab制作演示动画
  13. 192.168.8.1手机登陆_192.168.8.1登录入口上网设置
  14. 手机端微信突然弹出电脑端已登录,是什么原因?
  15. 2018年上半年信息安全工程师上午选择题及解析
  16. 计算机985专硕还是211学硕好,985专硕和211学硕哪个更值得读
  17. 鸿蒙os2.0第一批升级名单,首批升级鸿蒙OS名单终于来了!
  18. 计算一个字符串中字母的个数
  19. 插上耳机,电脑跟耳机都有声音(声音外放)解决办法
  20. 激动地心颤抖的手!终于迎接到数据仓库的开发快来参观

热门文章

  1. 实数系的基本定理_初中篇1|知实数-为什么0.9的循环等于1?
  2. java8电脑版安装包下载百度云_everything电脑文件搜索工具
  3. pool python 传参数_Python-爬虫-多线程、线程池模拟(urllib、requests、UserAgent、超时等)...
  4. php mongodb 子查询,MongoDB数组子查询elemMatch
  5. java webrtc ns降噪_单独编译和使用webrtc音频降噪模块(附完整源码+测试音频文件)...
  6. 2017年9月分c语言,2020年9月中国编程语言排行榜
  7. java stream 多次读取_多次从具有大量数据的Java InputStream中读取
  8. iis php 假死 nginx,网站假死 重启NGINX无效 必须重启PHP 原因分析
  9. 算法中分类与聚类的区别?
  10. JAVA 编程-张晨光-专题视频课程