代码拉取完成,页面将自动刷新
redis:持久化、复制(主从架构)、哨兵(高可用、主备切换)、redis cluster(海量数据+横向扩容+高可用/主备切换)
持久化:高可用的一部分,在发生redis集群灾难的情况下(比如说master+slave全部死掉了),如何快速进行数据恢复,快速实现服务可用,才能实现整个系统的高可用
复制:主从架构,master -> slave复制,读写分离的架构,写master,读slave,横向扩容slave支持更高的独吞吐,读高并发,10万,20万,30万,上百万QPS,横向扩容
哨兵:高可用,主从架构,在master故障的时候,快速将slave切换成master,实现快速的灾难恢复,实现高可用性
redis cluster:多master读写,数据分布式的存储,横向扩容,水平扩容,快速支撑高达的数据量+更高的读写QPS,自动进行master ->slave的主备切换,高可用
让底层的缓存系统,redis,实现能够任意水平扩容,支持海量数据(1T+,几十T,10G*600redis = 6T),支撑很高的读写QPS,高可用性(每个redis都做好AOF+RDB的备份策略+容灾策略,slave->master主备切换)
1T+海量数据
1、redis的第一套企业级的架构
redis持久化+备份方案+容灾方案+replication(主从+读写分离)+sentinal(哨兵模式|3个节点|高可用)
2.redis的第二套企业级的架构
redis cluster,多master分布式存储数据,水平扩容支持更多的数据量
1.解决数据库和缓存双写数据不一致问题
原因:同时写入数据库和更新redis,如果更新reids就是先删除,然后获取不到数据就从数据库钟获取,如果删除失败,那么redis的数据没有更新,这个时候就和数据库里面的数据不一致了
解决:先删除缓存,在修改数据库
另一种解决方案:数据库和redis异步,先计算hash值,然后放入对应的队列中,然后路由,通过读取内存队列ArrayBlockQueue(100),queue.add();
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。