Java 后端 Redis 核心知识点与工程实践
Redis 是 Java 后端面试中出现频率最高的中间件之一。
对实习生而言,面试官并不期待你会调优或源码级理解, 但必须清楚 Redis 是什么、能干什么、怎么用、会踩什么坑。
本文从 工程实用角度,总结 Redis 核心知识。
一、Redis 是什么?解决什么问题?
Redis 本质是一个:
基于内存的 Key–Value 数据结构服务器
它主要解决三类问题:
- 性能问题:数据库太慢
- 并发问题:共享状态、计数
- 解耦问题:缓存、简单通信
在真实系统中,Redis 常见位置是:
Java Service → Redis → MySQL
二、Java 与 Redis 如何通信?(高频面试点)
结论先给出:
Java 和 Redis 之间,既不是 HTTP,也不是 RPC,而是 RESP 协议
- RESP(Redis Serialization Protocol)
- 基于 TCP 长连接
- 极简、低延迟
在 Java 中你感知不到 RESP
因为你通常使用的是:
- Jedis
- Lettuce
- Redisson
- Spring Data Redis
例如:
redisTemplate.opsForValue().set("key","value");
底层流程是:
Java Client → RESP 命令 → Redis → RESP 返回
三、Redis 五大核心数据类型(重点)
1️⃣ String(最常用)
本质:key → 一个二进制值
SET k v GET k INCR counter
典型场景:
- 缓存 JSON
- 分布式计数器
- 分布式锁(SET NX EX)
2️⃣ Hash(对象型数据)
HSET user:1 name Tom age 18 HGET user:1 name
适合:
- 用户信息
- 配置对象
比 String + JSON 更灵活

