1. Redis 简介
什么是 Redis?
Redis(Remote Dictionary Server)是一个开源的、基于内存的键值存储数据库。如果把传统数据库比作图书馆,那 Redis 就是你桌面上的便利贴——随手可得,速度飞快。
它的核心特点:
- 极速:数据存在内存中,读写速度可达 10万+ QPS
- 丰富的数据结构:不仅仅是简单的 Key-Value,还支持 List、Hash、Set、Sorted Set 等
- 持久化:数据可以保存到硬盘,重启不丢失
- 原子性操作:所有操作都是原子的,天然支持并发安全
- 多功能:缓存、消息队列、排行榜、计数器……它都能胜任
为什么选择 Redis?
想象你开了一家奶茶店:
- 🗄️MySQL就像你的仓库,能存很多东西,但每次找原料都要去仓库翻
- ⚡Redis就像操作台上的置物架,常用原料随手拿到,出杯速度快 10 倍
Redis 并不是要取代 MySQL,而是做它的「加速搭档」。热数据放 Redis,冷数据放 MySQL,各司其职。
典型应用场景
- 🔔缓存:最经典用途,减轻数据库压力
- 🏆排行榜:用 Sorted Set 轻松实现实时排名
- 📊计数器:文章阅读数、点赞数、UV 统计
- 💬消息队列:用 List 或 Stream 实现异步任务
- 🔒分布式锁:SETNX 实现跨服务的互斥访问
- ⏱️会话缓存:存储用户 Session,配合过期时间
- 📍地理位置:附近的人、附近的店铺
- 🔄限流:API 频率限制,防止恶意请求