系统架构师备考倒计时23天(每日知识点)Redis篇

Redis篇

1.Redis与Memcache能力对比

工作 MemCache Redis
数据类型 简单 key/value 结构 丰富的数据结构
持久性 不支持 支持
分布式存储 客户端哈希分片/一致性哈希 多种方式,主从、Sentinel、Cluster 等
多线程支持 支持 支持(Redis5.0及以前版本不支持)
内存管理 私有内存池/内存池
事务支持 不支持 有限支持
数据容灾 不支持,不能做数据恢复 支持,可以在灾难发生时,恢复数据

2.Redis集群切片的常见方式

集群切片方式 核心特点
客户端分片 在客户端通过key的hash 值对应到不同的服务器。
中间件实现分片 在应用软件和 Redis 中间,例如:Twemproxy、Codis 等,由中间件实现服务到后台Redis节点的路由分派。
客户端服务端协作分片 客户端与服务端协作完成分片处理。

3.Redis分布式存储方案

分布式存储方案 核心特点
主从(Master/Slave)模式 一主多从,故障时手动切换。
哨兵(Sentinel)模式 有哨兵的一主多从,主节点故障自动选择新的主节点。
集群(Cluster)模式 分节点对等集群,分slots,不同slots的信息存储到不同节点。

4.Redis数据分片方案

分片方案 分片方式 说明
范围分片 按数据范围值来做分 例:按用户编号分片,0-999999 映射到实例A;1000000-1999999映射到实例 B。
哈希分片 通过对key进行hash运算分片 可以把数据分配到不同实例,这类似于取余操作,余数相同的,放在一个实例上。
一致性哈希分片 哈希分片的改进 可以有效解决重新分配节点带来的无法命中问题。
相关推荐
熏鱼的小迷弟Liu2 小时前
【Redis】Redis Zset实现原理:跳表+哈希表的精妙设计
数据库·redis·散列表
观无4 小时前
Redis远程链接应用案例
数据库·redis·缓存·c#
好想有猫猫7 小时前
【Redis】服务端高并发分布式结构演进之路
数据库·c++·redis·分布式·缓存
孔令飞8 小时前
使用 Go 与 Redis Streams 构建可靠的事件驱动系统
redis·ai·云原生·golang·kubernetes
yuanlaile8 小时前
Go全栈_Golang、Gin实战、Gorm实战、Go_Socket、Redis、Elasticsearch、微服务、K8s、RabbitMQ全家桶
linux·redis·golang·k8s·rabbitmq·gin
高效匠人8 小时前
FastAPI + Redis Pub/Sub + WebSocket 组合解决方案的详细介绍
redis·websocket·fastapi
lovebugs9 小时前
Redis的高性能奥秘:深入解析IO多路复用与单线程事件驱动模型
redis·后端·面试
灏瀚星空10 小时前
从基础到实战的量化交易全流程学习:1.2 金融市场基础
笔记·python·信息可视化·系统架构·开源
异常君11 小时前
Redis 中的概率过滤器:布隆过滤器与布谷鸟过滤器实战对比
java·redis·后端
多多*13 小时前
非关系型数据库 八股文 Redis相关 缓存雪崩 击穿 穿透
java·开发语言·jvm·数据库·redis·缓存·nosql