240115-静态变量缓存(本地缓存)VS redis缓存(分布式缓存)

89 阅读1分钟

缓存的区别(摘抄于文章1)

缓存分为本地缓存和分布式缓存。以java为例,使用自带的map或者guava实现的是本地缓存,最主要的特点是轻量以及快速,生命周期随着jvm的销毁而结束,并且在多实例的情况下,每个实例都需要各自保存一份缓存,缓存不具有一致性。

使用redis或memcached之类的称为分布式缓存,在多实例的情况下,各实例共用一份缓存数据,缓存具有一致性。缺点是需要保持redis或memcached服务的高可用,整个程序架构上较为复杂。

对比

静态变量缓存redis缓存
本质区别进程内共享进程间共享
读取速度本地读取,快内存读取,较快,并发性强
持久化随jvm销毁而消失可持久化
并发性
场景单一丰富数据结构及api
过期机制不支持支持

参考文章:

blog.csdn.net/zy1994hyq/a… www.cnblogs.com/yougewe/p/9…