JWT本无状态,为何却要存储在Redis破坏其无状态特性?

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: JWT本无状态,为何却要存储在Redis破坏其无状态特性?

🍁 作者:知识浅谈,CSDN博客专家,阿里云签约博主,InfoQ签约博主,华为云云享专家

📌 擅长领域:全栈工程师、爬虫、ACM算法

💒 公众号:知识浅谈

🤞拿下,拿下🤞

🎈JWT优点?JWT为什么存客户端

JWT:先来说一下这是什么吧,JavaWebToken,可以得知这是一种token。

组成结构:JWT一共由三部分组成,Header的Base64编码,Payload的Base64编码,加密算法(Header+Payload+secret)的Base64编码。

Header:包含token类型,加密算法。

Payload:用户名,权限等非敏感信息。

Signature:加密算法(Header+Payload+secret)的Base64编码

JWT优点

无状态,

自身包含身份验证所需信息,使得后端不用存储Session 信息。

JWT缺点

无法主动失效。

无法主动续期。

一般JWT中包含了相应的用户信息,不需要在服务端存储,只需要登陆的时候携带验证即可,当然如果为了解决JWT自动续期的问题,我们往往存储在redis中,显然破坏了无状态在分布式服务器中的优势。

🎈使用redis目的是什么?

Redis:是一个Key-Value的键值对结构。

用处:常用于存储热点数据,如点赞数,评论,排行榜等数据,用户登录token等数据。

因为Redis中的数据是存储在内存中的,所以存取效率比较高,相比于Mysql中的数据,Redis中数据的存取更高效。

虽然是单线程但是速度缺很快,主要是因为以下几个方面:

  1. 数据存储在内存中。
  2. 采用IO多路复用原则
  3. 单线程,省去上下文切换花费的时间。
    其实Redis中的事件主要花费在IO上,其处理的事件往往不是很长。

🍚总结

以上关于JWT和Redis使用的部分说明,希望有所帮助。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
17天前
|
存储 缓存 NoSQL
深入解析Redis:一种快速、高效的键值存储系统
**Redis** 是一款高性能的键值存储系统,以其内存数据、高效数据结构、持久化机制和丰富的功能在现代应用中占有一席之地。支持字符串、哈希、列表、集合和有序集合等多种数据结构,适用于缓存、计数、分布式锁和消息队列等场景。安装Redis涉及下载、编译和配置`redis.conf`。基本操作包括键值对的设置与获取,以及哈希、列表、集合和有序集合的操作。高级特性涵盖发布/订阅、事务处理和Lua脚本。优化策略包括选择合适数据结构、配置缓存和使用Pipeline。注意安全、监控和备份策略,以确保系统稳定和数据安全。
211 1
|
3月前
|
存储 NoSQL Redis
redis存储原理和数据模型
redis存储原理和数据模型
27 1
|
3月前
|
存储 NoSQL 前端开发
jwt与redis,把生成的token放入redis中进行临时存储
jwt与redis,把生成的token放入redis中进行临时存储
75 0
|
27天前
|
存储 NoSQL 算法
【Redis技术进阶之路】「底层源码解析」揭秘高效存储模型与数据结构底层实现(字典)(二)
【Redis技术进阶之路】「底层源码解析」揭秘高效存储模型与数据结构底层实现(字典)
43 0
|
27天前
|
存储 NoSQL Redis
作者推荐 |【Redis技术进阶之路】「原理系列开篇」揭秘高效存储模型与数据结构底层实现(SDS)(三)
作者推荐 |【Redis技术进阶之路】「原理系列开篇」揭秘高效存储模型与数据结构底层实现(SDS)
28 0
|
2月前
|
存储 缓存 NoSQL
为什么要在 Redis 中存储两次同一份数据?
为什么要在 Redis 中存储两次同一份数据?
38 0
为什么要在 Redis 中存储两次同一份数据?
|
2月前
|
存储 缓存 NoSQL
Redis数据结构的奇妙世界:一窥底层存储机制【redis第一部分】
Redis数据结构的奇妙世界:一窥底层存储机制【redis第一部分】
74 0
|
3月前
|
存储 NoSQL 关系型数据库
Redis Set 用了 2 种数据结构来存储,到现在才知道
Redis Set 用了 2 种数据结构来存储,到现在才知道
37 0
|
3月前
|
缓存 NoSQL 安全
Redis 新特性篇:多线程模型解读
Redis 新特性篇:多线程模型解读
49 5
|
3月前
|
存储 NoSQL Redis
Redis(三)存储原理与数据模型(hash冲突、渐进式rehash)
Redis(三)存储原理与数据模型(hash冲突、渐进式rehash)
34 0

热门文章

最新文章