redis快
1.读写速度,不考虑并发问题,本地缓存自然是最快的。但是如果本地缓存不加锁,那应并发了咋办呢?所以,大家以加锁方式再比较一次。
场景使用,同一数据,从数据库取出来,放到redis只要一次,而放到本地缓存,则需要n个集群次
本地缓存无法用于重复点击,重复点击会分发请求到多台服务器,而用本地缓存只能防止本机重复点击,redis则可以防止,但是时间间隔也需要在redis的读写差之外。
redis内存可能n多扩充,而本地扩大堆内存代价是很大的。
本地缓存需要自己实现过期功能,实现不好可能导致极其严重的后果,而redis经过大量的流量验证,许多漏洞无需考试,安全。
本地缓存无法提供丰富的数据结构,redis可以。
redis可以写磁盘,持久化,本地缓存不可以或者说很麻烦要考虑的东西太多。
各位开发同学水平差别大,使用本地缓存极有可能导致严重的线程安全问题,并发考虑严重。
加本地缓存后,代码复杂度急剧上升,后面进来的开发很难一下领会原有开发想法。间接提升维护成本。
其实在map和redis取值这里省的时间,可能在大家写得乱七八糟的代码里,早都不算啥了,所有有时候咱们真的没必要较那几毫秒的真!