2018年5月31日

缓存穿透,缓存击穿,缓存雪崩

摘要: 前言 设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。 缓存穿透 访问一个不存在的key,缓存不起作用,请求会穿透到DB,流量大时DB会挂掉。 大并发的缓存穿透会导致缓存雪崩。 解决方案 1.布隆过滤 采用布隆过滤器,将所有可能存在的数据哈希到一个足够大的bitmap 阅读全文

posted @ 2018-05-31 15:37 米虫爱喝咖啡 阅读(136) 评论(0) 推荐(0) 编辑

缓存的种类

摘要: 缓存的作用:加速读写,降低后端负载。 1. LocalCache(独立式): 例如Ehcache、BigMemory Go (1) 缓存和应用在一个JVM中。 (2) 缓存间是不通信的,独立的。 (3) 弱一致性。 2. Standalone(单机): (1) 缓存和应用是独立部署的。 (2) 缓存 阅读全文

posted @ 2018-05-31 15:37 米虫爱喝咖啡 阅读(266) 评论(0) 推荐(0) 编辑

ZooKeeper

摘要: Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储, Zookeeper 作用主要是用来维护和监控存储的数据的状态变化,通过监控这些数据状态的变化,从而达到基于数据的集群管理。 1.Znode 像数据结构当 阅读全文

posted @ 2018-05-31 13:52 米虫爱喝咖啡 阅读(114) 评论(0) 推荐(0) 编辑

分布式锁

摘要: 1、分布式锁的定义 分布式锁,是控制分布式系统之间同步访问共享资源的一种方式。 2、分布式锁的实现有哪些? 1.Memcached分布式锁 利用Memcached的add命令。此命令是原子性操作,只有在key不存在的情况下,才能add成功,也就意味着线程得到了锁。 2.Redis分布式锁 和Memc 阅读全文

posted @ 2018-05-31 11:09 米虫爱喝咖啡 阅读(137) 评论(0) 推荐(0) 编辑

导航