系统架构师备考倒计时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运算分片 可以把数据分配到不同实例,这类似于取余操作,余数相同的,放在一个实例上。
一致性哈希分片 哈希分片的改进 可以有效解决重新分配节点带来的无法命中问题。
相关推荐
嘻哈baby5 小时前
Redis高可用部署与集群管理实战
数据库·redis·bootstrap
[J] 一坚6 小时前
Shell 脚本解锁 curl/iptables/Nginx 日志分析等实战用法
linux·服务器·正则表达式·系统架构·自动化
Java爱好狂.7 小时前
Java面试Redis核心知识点整理!
java·数据库·redis·分布式锁·java面试·后端开发·java八股文
阿杆8 小时前
如何在 Spring Boot 中接入 Amazon ElastiCache
java·数据库·redis
Tadas-Gao10 小时前
存储技术革命:SSD、PCIe与NVMe的创新架构设计与性能优化
java·性能优化·架构·系统架构·存储
粟悟饭&龟波功10 小时前
【软考系统架构设计师】七、系统架构设计基础
系统架构·软件工程
此生只爱蛋13 小时前
【Redis】String 字符串
java·数据库·redis
青云交13 小时前
Java 大视界 -- 基于 Java+Flink 构建实时电商交易风控系统实战(436)
java·redis·flink·规则引擎·drools·实时风控·电商交易
破烂pan13 小时前
Python 整合 Redis 哨兵(Sentinel)与集群(Cluster)实战指南
redis·python·sentinel
SoleMotive.14 小时前
redis和mysql有什么区别,以及redis和mysql都有什么缺点,以及什么地方redis不如mysql?
数据库·redis·mysql