![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
文章平均质量分 85
Redis中间件
@Sup
学无止境!
展开
-
用Redis而不用map/guava作缓存的原因分析
原因缓存分为本地缓存和分布式缓存。以java为例,使用自带的map或者guava实现的是本地缓存,最主要的特点是轻量以及快速,生命周期随着jvm的销毁而结束,并且在多实例的情况下,每个实例都需要各自保存一份缓存,缓存不具有一致性。使用redis或memcached之类的称为分布式缓存,在多实例的情况下,各实例共用一份缓存数据,缓存具有一致性。缺点是需要保持redis或memcached服务的高可用,整个程序架构上较为复杂。redis 和 memcached 的区别现在公司一般都是用 Red.原创 2022-03-02 10:17:28 · 569 阅读 · 0 评论 -
缓存与数据库双存储双写场景下数据一致性问题的解决方案
一.最经典的Cache Aside Pattern方案最经典的缓存+数据库读写的模式,就是 Cache Aside Pattern。读的时候,先读缓存,缓存没有的话,就读数据库,然后取出数据后放入缓存,同时返回响应。 更新的时候,先更新数据库,然后再删除缓存。为什么是删除缓存,而不是更新缓存?原因很简单,很多时候,在复杂点的缓存场景,缓存不单单是数据库中直接取出来的值。比如可能更新了某个表的一个字段,然后其对应的缓存,是需要查询另外两个表的数据并进行运算,才能计算出缓存最新的值的。另原创 2022-03-02 12:27:37 · 235 阅读 · 0 评论 -
SpringCache整合Redis实现项目缓存解决方案
前言 说实话,在写这一篇文章之前我一直没有搞懂一个问题。明明我们项目中使用最多的缓存技术就是Redis,用Redis就完全就可以搞定缓存的问题了,为什么还有一个SpringCache,以及SpringCache和Redis之间的区别。一、 为什么要使用缓存缓存是将数据直接存入内容中,读取效率比数据库的更高 缓存可以有效地降低数据库压力,为数据库减轻负担二、 常见的缓存中间件Redis、Memcached、Guava、Caffeine,其中Redis和Memcached使用的较多,各自也有转载 2022-05-14 11:26:13 · 1052 阅读 · 0 评论