YuXuan
发布于 2020-10-09 / 12 阅读
0

缓存回顾

使用场景:
互联网,数据越来越多,用户越来越多,并发量、吞吐量越来越大

  1. 使用数据库存储,分库分表,也不能满足要求,使用缓存,减轻数据库的压力
  2. 临时存储的数据
  3. 其他的场景:Session分离、分布式锁

缓存(服务器端):
本地缓存(local cache)
CurrentHashMap、Ehcache、Guava Cache
缓存在应用服务器,全局变量,JVM缓存
优势:和应用程序在同一进程,访问快,没有网络开销,一般不会崩
缺点:容量小,每个JVM有一份,有数据冗余

分布式缓存
Redis、Memcached、Tair(阿里、美团)、EVCache(AWS)、Aerospike
优势:空间优势、在应用中共享(session共享)、高可用(主从)、高扩展(分区)、集群
缺点:资源、网络开销、数据一致性(AP)
前面已经详解了Redis,接下来讲其他的缓存

GuavaCache、Tair、EVCache、Aerospike比较

GuavaCacheTairEVCacheAerospike
类别本地缓存(JVM缓存)分布式缓存分布式缓存分布式NoSQL数据库
应用高并发本地缓存阿里、美团Netflix、AWS互联网广告行业(国外)
性能较高很高较高
持久化
集群