什么是 Redis?

更多面试题请看这里:https://interview.raoyunsoft.com/

面试题专栏会持续更新欢迎关注订阅

Redis 是一款开源的内存数据结构存储系统,采用 BSD 许可协议。它不仅是高性能数据库和缓存工具,还能充当消息中间件。核心能力在于支持丰富的数据结构,并提供企业级的高可用方案。

🔑 核心特性
  1. 内存存储引擎

    所有数据优先存储在内存中,实现微秒级读写响应(如图),远超传统磁盘数据库:

  2. 多样化数据结构

    超越简单键值存储,原生支持 5 种核心结构:

    Redis 字符串 哈希表 列表 集合 有序集合 位图 HyperLogLog

  3. 持久化与高可用

    • 数据安全:支持 RDB 快照和 AOF 日志两种持久化模式
    • 故障转移:通过哨兵机制实现自动故障检测和主从切换
    • 水平扩展:Cluster 模式支持分布式部署(如图)
  4. 高级功能集成

    • 原子事务:支持 MULTI/EXEC 事务块
    • Lua 脚本:在服务端执行复杂操作
    • 发布订阅:消息广播能力
    • 自动淘汰:LRU/LFU 内存管理策略
💡 典型应用场景
场景类型 数据结构应用 性能优势
实时缓存 字符串/哈希 100万QPS读写
排行榜 有序集合(ZSET) 毫秒级动态排序
社交关系 集合(SET) 交集/并集运算
秒杀系统 列表(LIST)+事务 高并发原子操作
实时统计 HyperLogLog/位图 低内存精准计数
⚙️ 技术架构亮点

集群层 服务层 数据层 16384槽位 Cluster分片 自动故障转移 Sentinel 避免锁竞争 单线程Reactor Epoll多路复用 RDB持久化 内存数据集 AOF日志

相关推荐
SelectDB3 分钟前
Apache Doris 5.0 年度版本前瞻(一):构建统一的多模湖仓实时分析平台
大数据·数据库·数据分析
苏生Susheng16 分钟前
【软件实施】Linux企业运维常用命令手册
java·linux·运维·服务器·springboot·springcloud·软件实施
想要成为老金高手18 分钟前
Kubernetes 调度器详解:从 nodeName 到污点容忍
java·容器·kubernetes
吴长建先生重名了21 分钟前
ElasticSearch 检索系统性能优化实战:基准测试
java
小白学大数据25 分钟前
超简单:用 Python 让 Excel 飞起来:用 openpyxl 把重复报表整理交给脚本
开发语言·数据库·python·excel
西索斯coding29 分钟前
doubao-seed-2.1-turbo 调用一直 401 怎么办?pro 版同样的 Key 却正常——5 分钟排查定位指南
java·服务器·数据库·ai
旧梦952736 分钟前
Java SortedMap 接口详解:从入门到实战
java·开发语言
2601_9623010137 分钟前
深入理解缓存(Cache):原理、应用与优化
缓存·计算机原理·优化策略·数据访问·系统性能
莫陌尛.39 分钟前
Java_this构造方法
java·开发语言
袋鼠云数栈1 小时前
整库迁移与分库分表同步:批量数据搬迁的配置简化思路
jvm·数据库·oracle