面试官:既然 JWT 这么好,为什么大厂还在用 Session?
面试官问“现在都 2026 年了登录鉴权是不是该全切到 JWT 了”很多人会不假思索地点头“当然JWT 无状态、可扩展、跨域方便Session 早该被淘汰了。”如果你这么回答恭喜你掉坑里了。这时候面试官通常会补一刀“那如果用户手机丢了或者改了密码你怎么把旧的 JWT 立即作废”这一问往往能把 90% 的候选人问懵。这篇文章就来聊聊为什么被吹上天的 JWT在很多大厂的核心业务里反而不如老土的 Session看懂本质差异在撕逼之前先对齐一下概念。Session 方案类似于会员卡 账本用户登录服务端给一个sessionId会员卡号。服务端在 Redis 或内存里存一份记录账本sessionId_123 { user_id: 1, role: admin }。每次请求服务端查账本确认有效才放行。核心特点服务端有状态Stateful控制权在服务端。JWT 方案类似于现金用户登录服务端根据用户信息生成一串加密字符串钞票。钞票上写着{ user_id: 1, role: admin, expire: 2027-01-01 }。服务端不存记录只负责发钱和验钞。每次请求服务端解密验钞没过期就是真的。核心特点服务端无状态Stateless控制权在客户端只要没过期就能用。JWT 的致命死穴我想封杀你但做不到回到开头的面试题“怎么把旧的 JWT 立即作废”在 Session 方案里这太简单了。你手机丢了客服后台点一下下线服务端把 Redis 里的sessionId删了。下次那个手机再发请求查不到记录直接拒绝。秒级生效。但在 JWT 方案里服务器是不存状态的。Token 发出去了就像泼出去的水。只要还在有效期内比如 2 小时哪怕你把服务器重启了、把用户密码改了拿着旧 Token 的黑客依然能畅通无阻。这时候你会想各种补救办法但你会发现每个办法都很尴尬1. “那我把过期时间设短点比如 5 分钟”那用户每 5 分钟就得重新登录一次体验爆炸。你说搞个 Refresh Token 自动续期那 Refresh Token 也是 Token它不需要作废吗如果 Refresh Token 被偷了黑客能无限续杯岂不是更危险2. “那搞个黑名单Blacklist”用户注销时把这个 Token 记到 Redis 黑名单里。每次请求都查一下是不是在黑名单。打脸时刻兄弟你既然都要查 Redis 了为什么不直接用 SessionJWT 的最大优势就是无状态、不查库你现在每秒几万次请求都要查黑名单那 JWT 的性能优势还在哪为什么大厂特别是金融/支付偏爱 Session除了无法废止这个硬伤JWT 还有几个隐性成本大厂算得很精1. 续签Renewal问题Session 续签是无感的。只要你一直在操作服务端就在 Redis 里顺手把你的过期时间往后延。JWT 里的过期时间是写死在 Payload 里的。想续签必须发一个新的 JWT 给你。前端得写一堆拦截器逻辑发现快过期了 - 拿着旧 Token 换新 Token - 重发请求。复杂度的天平从后端倾斜到了前端。2. 带宽占用Session ID 只有 32 个字节。一个包含基本信息的 JWT动不动就几百个字节。如果你的 Token 放在 Header 里每次 HTTP 请求都要多带几百字节的数据。对于像淘宝、微信这种亿级流量的入口光是这多出来的流量成本就是一笔巨款。3. 数据实时性JWT 里的信息是快照。你刚登录时是普通会员生成了 JWT。下一秒你充钱成了 VIP。但你手里的 JWT 写的还是普通会员。除非你重新登录或者服务端在验证 Token 后再查一次库又回到了查库的老路否则你的 VIP 权益无法即时生效。Session 每次都查 Redis天然保证数据是最新的。那 JWT 到底有什么用把 JWT 贬得一文不值也不对。存在即合理JWT 在以下场景是绝杀1. 微服务/服务间调用Machine-to-MachineA 服务调 B 服务不用维持长连接会话。发一个短期的 JWTB 服务解密验证签名就知道是谁调的效率极高。2. 单次授权 Token比如重置密码链接、“邮箱验证链接”。发一个 JWT 放在 URL 里有效期 10 分钟。用户点开验签通过准许改密码。用完即废不需要维持状态。3. 不想/不能做服务端存储比如一些简单的工具类网站没钱买 Redis只想撸个单机版 Node.js那 JWT 是真香。面试怎么答简洁版30 秒JWT 最大的优势是无状态但也正是它的劣势。因为无状态所以服务端无法主动废止 Token比如用户改密、被盗号场景。要解决这个问题通常需要引入 Redis 做黑名单这就违背了 JWT 无状态的初衷。相比之下Session Redis 方案虽然有状态但能做到精细化的权限控制和实时踢人下线。对于复杂的 C 端业务Session 的安全性和控制力更好而 JWT 更适合微服务间的授权或一次性验证。进阶版1 分钟带架构思考技术选型没有银弹只有取舍。Session 的本质是控制服务端掌握绝对控制权适合对安全性要求高、需要实时管理用户状态的场景如电商、银行。缺点是需要维护存储组件Redis有扩容成本。JWT 的本质是交换用计算CPU 验签换存储内存/Redis。适合服务间通信或者对即时性要求不高的应用。如果很多大厂还在用 Session往往是因为他们的基础设施Redis 集群已经足够强大相比于 JWT 带来的无法废止风险他们更愿意承担存储成本来换取绝对的安全控制权。最后总结一句不要为了用新技术而用新技术。如果你的业务需要此时此刻把这个讨厌的用户踢出去请老老实实拥抱 Session。写在最后最近私信问我面试题的小伙伴实在太多了一个个回有点回不过来。我花了两个周末把星球里大家公认最容易挂的Go/Java/AI 面试坑点整理成了一份PDF 文档。里面不光有题还有解题思路和避坑指南。想要的同学直接关注并私信我【面试】我统一发给大家。

相关新闻

WEB 作业 即时内容发布前端交互案例

WEB 作业 即时内容发布前端交互案例

在这里我做的是喜灰为主题的 代码如下 <html lang"zh-CN"> <head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>灰太郎大王新品发布会</…

2026/7/5 20:15:46 阅读更多 →
总结19个WEB常见安全漏洞及应对方案

总结19个WEB常见安全漏洞及应对方案

随着Web2.0、网络社交等一系列新型的互联网产品的诞生&#xff0c;基于Web环境的互联网应用越来越广泛&#xff0c;企业信息化的过程中&#xff0c;越来越多的应用都架设在Web平台上。Web业务的迅速发展吸引了黑客们的强烈关注&#xff0c;接踵而至的就是Web安全威胁的凸显。黑…

2026/7/8 8:50:11 阅读更多 →
【OpenCV】Python图像处理矩特征之矩的计算/计算轮廓的面积

【OpenCV】Python图像处理矩特征之矩的计算/计算轮廓的面积

OpenCV-Python 中图像矩特征的计算&#xff0c;以及基于矩 / 轮廓 API 计算轮廓面积的方法&#xff0c;图像矩是描述图像 / 轮廓几何特征的重要参数&#xff0c;能反映目标的大小、位置、形状、方向等信息&#xff0c;而轮廓面积是矩特征中最常用的基础指标&#xff0c;同时 Op…

2026/7/6 22:49:40 阅读更多 →

最新新闻

RK3588 AI视频分析常见问题和排查清单:明厨亮灶场景下的选型与算力估算指南

RK3588 AI视频分析常见问题和排查清单:明厨亮灶场景下的选型与算力估算指南

作为一名边缘计算和AI视频分析部署顾问&#xff0c;我常听到开发者或项目经理抱怨&#xff1a;“为什么我买的盒子号称有超高算力&#xff0c;一上现场跑 4 路视频就卡得像PPT&#xff1f;”或者“明厨亮灶项目到底该用 GPU 服务器还是边缘盒子&#xff0c;心里完全没底。”AI落…

2026/7/8 10:55:45 阅读更多 →
history / historic / historical 完整初学者拆解

history / historic / historical 完整初学者拆解

history / historic / historical 完整初学者拆解&#xff08;发音词义用法对比&#xff09; 一、音标&重音对比&#xff08;美式&#xff09; history /ˈhɪstəri/ n. 历史 重音&#xff1a;第1音节historic /hɪˈstɔːrɪk/ adj. 有重大历史意义的 重音&#xff1a;第…

2026/7/8 10:51:39 阅读更多 →
3分钟解决魔兽争霸3兼容性问题:WarcraftHelper终极优化指南

3分钟解决魔兽争霸3兼容性问题:WarcraftHelper终极优化指南

3分钟解决魔兽争霸3兼容性问题&#xff1a;WarcraftHelper终极优化指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸3在新电脑上卡顿…

2026/7/8 10:51:38 阅读更多 →
STM32F411RE与TB67H480FNG的电机控制方案解析

STM32F411RE与TB67H480FNG的电机控制方案解析

1. 为什么选择TB67H480FNGSTM32F411RE组合 在电机控制和嵌入式系统开发领域&#xff0c;硬件选型往往决定了项目的性能上限和开发效率。TB67H480FNG作为东芝新一代步进电机驱动芯片&#xff0c;与STMicroelectronics的STM32F411RE微控制器组合&#xff0c;形成了工业级运动控制…

2026/7/8 10:49:37 阅读更多 →
终极Unity资源编辑器:UABEA完整指南与快速入门教程

终极Unity资源编辑器:UABEA完整指南与快速入门教程

终极Unity资源编辑器&#xff1a;UABEA完整指南与快速入门教程 【免费下载链接】UABEA c# uabe for newer versions of unity 项目地址: https://gitcode.com/gh_mirrors/ua/UABEA UABEA是一款功能强大的跨平台Unity Asset Bundle编辑器&#xff0c;专为游戏开发者和资源…

2026/7/8 10:45:31 阅读更多 →
5分钟免费安装WarcraftHelper:魔兽争霸3性能优化与兼容性修复终极指南

5分钟免费安装WarcraftHelper:魔兽争霸3性能优化与兼容性修复终极指南

5分钟免费安装WarcraftHelper&#xff1a;魔兽争霸3性能优化与兼容性修复终极指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸3在现…

2026/7/8 10:45:31 阅读更多 →

日新闻

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验&#xff1a;MAA自动化助手的革命性突破 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手&#xff0c;全日常一键长草&#xff01;| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: …

2026/7/8 0:00:48 阅读更多 →
MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N1 到批处理的全路径 一、从"功能正确"到"性能可接受"——MyBatis 批量操作的三段式进化 MyBatis 在日常增删改查场景中几乎是无感的——实体映射直观、SQL 控制灵活。但当数据量从千级上升到十万级、百万级&#xff0c;许…

2026/7/8 0:00:48 阅读更多 →
工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

1. 工业负载控制方案概述在工业自动化、电机驱动和照明控制等高需求场景中&#xff0c;可靠地控制电感和电阻负载是核心挑战之一。TPD2015FN作为东芝的8通道高端智能功率开关IC&#xff0c;配合PIC18F45K22微控制器&#xff0c;能够构建一套稳定、高效的负载控制系统。这套组合…

2026/7/8 0:02:48 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools&#xff1a;5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里&#xff0c;参与了关于混合后量子密码学的讨论&#xff0c;应付端点攻击找茬的人&#xff0c;还参与留言板讨论后&#xff0c;发现“威胁模型”对多数人仍是陌生概念&#xff0c;且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”&#xff1a;我理解的渗透测试到底是什么&#xff1f;每次看到新闻里说某个大公司的数据被“黑”了&#xff0c;或者某个网站被攻击导致服务瘫痪&#xff0c;你是不是和我一样&#xff0c;心里会冒出两个念头&#xff1a;一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻