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

相关推荐
Big Cole6 小时前
PHP面试题(Redis核心知识篇)
开发语言·redis·php
TracyCoder1236 小时前
Redis分布式限流技术原理与实战
redis
咖啡啡不加糖7 小时前
Arthas 使用指南:Java 应用诊断利器
java·spring boot·后端
J_liaty7 小时前
SpringBoot整合Canal实现数据库实时同步
数据库·spring boot·后端·canal
小北方城市网7 小时前
MongoDB 分布式存储与查询优化:从副本集到分片集群
java·spring boot·redis·分布式·wpf
想逃离铁厂的老铁7 小时前
Day60 >> 94、城市间货物运输1️⃣ + 95、城市间货物运输 2️⃣ + 96、城市间货物运输 3️⃣
java·服务器·前端
kyrie学java7 小时前
SpringWeb
java·开发语言
草莓熊Lotso7 小时前
从零手搓实现 Linux 简易 Shell:内建命令 + 环境变量 + 程序替换全解析
linux·运维·服务器·数据库·c++·人工智能
努力学算法的蒟蒻7 小时前
day74(2.2)——leetcode面试经典150
面试·职场和发展
TTBIGDATA8 小时前
【Hue】Ambari 页面启动 Hue 失败 user ‘hadoop‘ does not exist
java·hadoop·ambari