2020年10月

Tair介绍Tair简介Tair(Taobao Pair)是淘宝开发的分布式Key-Value存储引擎,服务器端自动负载均衡,分为持久化和非持久化两种方式存储非持久化:分布式缓存使用 Memcached(mdb)、Redis(rdb)持久化:SQL-DB使用FireBird(fdb)NoSQL-DB:使用Kyoto Cabinet(kdb)、LevelDB(ldb)Tair采用可插拔存储引擎设计,以上这些存储引擎可以很方便的替换,...

阅读全文 »

EVCache介绍EVCache是一个开源、快速的分布式缓存,是基于Memcached的内存存储和Spymemcached客户端实现的,是Netflix(网飞)公司开发的E:Ephemeral:数据存储是短暂的,有自身的存活时间V:Volatile:数据可以在任何时候消失Cache:内存级键值对存储Rend服务:是一个代理服务,用GO语言编写,能够高性能的处理并发。Memcached:基于内存的键值对缓存服务器Mnemonic:基...

阅读全文 »

Guava Cache介绍JVM缓存JVM 缓存,是堆缓存。其实就是创建一些全局容器,比如List、Set、Map等,这些容器用来做数据存储。这样做的问题:不能按照一定的规则淘汰数据,如 LRU,LFU,FIFO 等。没有清除数据时的回调通知并发处理能力差,针对并发可以使用CurrentHashMap,但缓存的其他功能需要自行实现缓存过期处理,缓存数据加载刷新等都需要手工实现Guava CacheGuava是Google提供的一套...

阅读全文 »

使用场景:互联网,数据越来越多,用户越来越多,并发量、吞吐量越来越大使用数据库存储,分库分表,也不能满足要求,使用缓存,减轻数据库的压力临时存储的数据其他的场景:Session分离、分布式锁缓存(服务器端):本地缓存(local cache)CurrentHashMap、Ehcache、Guava Cache缓存在应用服务器,全局变量,JVM缓存优势:和应用程序在同一进程,访问快,没有网络开销,一般不会崩缺点:容量小,每个JVM有...

阅读全文 »

缓存雪崩、缓存穿透、缓存击穿答题思路:三者的概念,发生场景、解决方案三者的区别和影响涉及知识点:缓存问题—缓存穿透、缓存雪崩、缓存击穿穿透:不存在的key雪崩:大量的key失效击穿:一个key或一些key 热点key大Key,热点Key的处理Hot Key答题思路:hot key的概念,场景,问题hot key的发现hot key的处理涉及知识点:缓存问题—hot keyBig Key答题思路:big key的概念、场景,影响St...

阅读全文 »

目的:理解缓存设计要素掌握缓存预热能够进行缓存问题分析和提供解决方案能够整合mybatis使用缓存理解分布式锁原理并掌握使用理解乐观锁并掌握秒杀的实现理解Redisson的原理了解阿里Redis使用手册架构设计组件选择/多级缓存的设计要分多个层次,在不同的层次上选择不同的缓存,包括JVM缓存、文件缓存和Redis缓存JVM缓存JVM缓存就是本地缓存,设计在应用服务器中(tomcat)。通常可以采用Ehcache和Guava Cac...

阅读全文 »