刚好笔记上记了
在一些高并发的场景中,使用
***
可以减少对后端系统的负载,承担可大部分读的压力,可以大大提高系统的吞吐量,比如通常在数据库存储之前增加
***
缓存
。
单个节点
***
不能满足要求,就需要搭建分布式
Cache
;为了解决单个节点失效引起的抖动,分布式
***
一般采用一致性
hash
的解决方案
。
对于可用性要求比较高的场景,每个节点都是需要有备份的。数据在
***
和存储上都存有同一份备份,必然有一致性的问题,一致性比较强的,在更新数据库的同时,更新数据库
***
。对于一致性要求不高的,可以去设置缓存失效时间的策略。
用在高速的写操作的场景中,平台中有些数据需要写入数据库,并且数据是分库分表的,但对数据的可靠性不是那么高,为了减少对数据库的写压力,可以采取批量写操作的方式。开辟一个内存区域,当数据到达区域的一定阀值时如80%时
,
批量flush。