具体比较

关于本地缓存和分布式缓存

缓存分为本地缓存和分布式缓存。

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

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