什么是 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日志

相关推荐
傻瓜搬砖人14 分钟前
Spring集成Web环境
java·spring·maven
热爱运维的小七16 分钟前
告别内存溢出:ActiveMQ 性能诊断与全流程优化
数据库·it运维·activemq·devops
FQNmxDG4S18 分钟前
Java泛型编程:类型擦除与泛型方法的应用场景
java·开发语言·python
@小柯555m27 分钟前
MySql(高级操作符--操作符混合运用)
数据库·sql·mysql
CDN36029 分钟前
排查实录:网站偶发502/504错误?360CDN回源超时配置与日志分析技巧
前端·数据库
bzmK1DTbd30 分钟前
JDBC编程规范:PreparedStatement与事务管理
数据库·python·eclipse
卧室小白1 小时前
Redis-哨兵模式
数据库·redis·缓存
GottdesKrieges1 小时前
OceanBase恢复常见问题
java·数据库·oceanbase
IGAn CTOU1 小时前
Java高级开发进阶教程之系列
java·开发语言
leo825...1 小时前
Claude Code Skills 清单(本地)
java·python·ai编程