Redis报错-CROSSSLOT keys in request don‘t hash in the same slot

背景

问题涉及:spring security、spring session、redis

问题描述

springboot+springsecurity+springsession+antd 登录功能的时候,在源码中使用到了redis的rename命令(如下图所示)
在这里插入图片描述
在这里就会报错

CROSSSLOT keys in request don't hash in the same slot

这个错误。

解决办法

查找问题的过程这里省略了,基本上百度或google redis 集群 slot 哈希槽这些关键字都能找到相应的解答。

解决方法就是把缓存key中公共的部分用大括号:{}包裹起来。
例如,spring session默认的key长这样:

spring:session:09fb76b4-9e6d-4a93-98ef-6d1f586a218d
spring:sessions:expires:09fb76b4-9e6d-4a93-98ef-6d1f586a218d

那将key改为:

{custome_prefix}:session:09fb76b4-9e6d-4a93-98ef-6d1f586a218d
{custome_prefix}:sessions:expires:09fb76b4-9e6d-4a93-98ef-6d1f586a218d

即可。

具体操作上,可以通过配置参数spring.session.redis.namespace实现。

spring.session.redis.namespace={custome_key_prefix}

首先需要明确的是这个问题是集群才会出现的。因此如果你认为你在使用的redis是单机模式的话,理论上是不应该会出现这个问题的,如果出现这个问题,那就要考虑检查下连接的redis服务是不是集群模式?

当确定使用的是redis集群模式的时候,如果有这个问题,就需要加hashtag来处理了(也就是加大括号:{}包裹key);

但我浅薄的认知里觉得这个不是好办法,因为这个解决办法代码侵入性有点强,如果原本是小规模的项目使用单机模式的redis,随着业务发展需要迁移到集群上去,可能需要不小的工作量来兼容这个问题并且需要一定精力来做测试。(菜鸟认知,轻拍)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/4873.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于小波哈尔法(WHM)的一维非线性IVP测试问题的求解(Matlab代码实现)

💥1 概述 小波哈尔法(WHM)是一种求解一维非线性初值问题(IVP)的数值方法。它基于小波分析的思想,通过将原始问题转化为小波空间中的线性问题,然后进行求解。以下是一维非线性IVP测试问题的求解…

守护数智未来,开源网安受邀参加2023OWASP北京论坛

2023年7月14日,OWASP中国与网安加社区联合举办的“2023OWASP中国北京安全技术论坛”在北京圆满召开,开源网安受邀参加本次论坛并分享“软件供应链安全治理实践”。 本次“2023OWASP中国北京安全技术论坛”是OWASP中国北京地区年度重要活动之一&#xff…

Vue+axios 使用CancelToken多次发送请求取消前面所有正在pendding的请求

需求: 项目中 折线图数据是循环调用的,此时勾选一个设备, 会出现多条线。 原因 折线图数据一进来接口循环在调用,勾选设备时,循环调用的接口有的处于pedding状态 ,有的还在加载中,这就导致勾…

【PDFBox】PDFBox操作PDF文档之读取指定页面文本内容、读取所有页面文本内容、根据模板文件生成PDF文档

这篇文章,主要介绍PDFBox操作PDF文档之读取指定页面文本内容、读取所有页面文本内容、根据模板文件生成PDF文档。 目录 一、PDFBox操作文本 1.1、读取所有页面文本内容 1.2、读取指定页面文本内容 1.3、写入文本内容 1.4、替换文本内容 (1&#xf…

如何在 Endless OS 上安装 ONLYOFFICE 桌面编辑器

ONLYOFFICE 桌面编辑器是一款基于依据 AGPL v.3 许可进行分发的开源办公套件。使用这款应用,您无需保持网络连接状态即可处理存储在计算机上的文档。本指南会向您介绍,如何在 Endless OS 上安装 ONLYOFFICE 桌面编辑器。 ONLYOFFICE 桌面版是什么 ONLYO…

Spring Boot进阶(55):SpringBoot之集成MongoDB及实战使用 | 超级详细,建议收藏

1. 前言🔥 前几期我们有介绍Mysql、Redis等数据库介绍及实战演示,对基本的数据存放有很好的共性,但是如果说遇到大面积的xml、Json、bson等格式文档数据存放,以上数据库并非是最优选择,最优选择是Mongodb数据库。 那么…

如何将jar 包下载到自定义maven仓库

下载命令 mvn install:install-file -Dfileartifactid-version.jar -DgroupIdgroupid -DartifactIdartifactid -Dversionversion -Dpackagingjar -DlocalRepositoryPath. -DcreateChecksumtrue参数解释 在上述命令中,需要替换以下参数: artifactid-vers…

HTTP原理解析-超详细

作者:20岁爱吃必胜客(坤制作人),近十年开发经验, 跨域学习者,目前于海外某世界知名高校就读计算机相关专业。荣誉:阿里云博客专家认证、腾讯开发者社区优质创作者,在CTF省赛校赛多次取得好成绩。…

vue3+vue-router4:报错Uncaught (in promise) Error: Invalid navigation guard

报错图示: Error: Invalid navigation guard Uncaught (in promise) Error: Invalid navigation guard 错误影响描述: 配置开发、测试、生产时候,因为是公众号,所以想在开发环境下免鉴权,不走微信获取openid接口&a…

potplayer放大画面,画面拖拽。备份

放大画面: 按住alt和鼠标左键,就可以拖动放大后的画面了 窗口化示图

【DC-DC】APS54083 降压恒流驱动器大功率深度调光 舞台 RGB 汽车照明 台灯驱动芯片

产品描述 APS54083 是一款 PWM 工作模式,高效率、外围简单、外置功率 MOS 管,适用于 5-220V 输入高精度降压 LED 恒流驱动芯片。输出最大功率150W最大电流 6A。APS54083 可实现线性调光和 PWM 调光,线性调光脚有效电压范围 0.5-2.5V.PWM 调光频率范围 1…

学习babylon.js --- [3] 开启https

babylonjs提供WebVR功能,但是使用这个功能得用https,本文讲述如何使用自签名证书来开启https,基于第二篇文章中搭建的工程。 一 生成自签名证书 首先要安装openssl,这个去网上搜下就行了。安装完之后在终端下输入openssl回车可以…

MongoDB

MongoDB概述 MongoDB是一个基于分布式文件存储的数据库。由C语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 它支持的数据结构非…

状态模式:游戏、工作流引擎中常用的状态机是如何实现的?

从今天起,我们开始学习状态模式。在实际的软件开发中,状态模式并不是很常用,但是在能够用到的场景里,它可以发挥很大的作用。从这一点上来看,它有点像我们之前讲到的组合模式。 可以简短的回顾一下组合模式&#xff1a…

uniapp安卓签名证书生成,签名证书的SHA1,SHA256,MD5获取

uniapp安卓证书生成有两种方式,一种是去dcloud开发者中心生成证书,另一种是安装jre环境,自己生成证书 第一种 dcloud生成证书 去该项目对应的应用处,生成证书需要等几分钟,生成后可以查看证书信息 第二种 自己生成…

如何下载SRA存放在AWS的原始数据

通常,我们都是利用prefetch从NCBI上获取数据,然后用fasterp-dump/fastq-dump 转成fastq。但遗憾的SRA的数据是原数据的有损压缩,比如说我19年参与发表的文章里单细胞数据上传的是3个文件,但是当时的faster-dump/fastq-dump只能拆出…

【ArcGIS Pro二次开发】(46):要素类从上到下、从左到右排序

要素类经过编辑之后,【OBJECTID】字段会变得不规律。应部分网友要求,做了这个从上到下、从左到右排序的工具。 不过后来在ArcGIS Pro中发现了一个【排序】工具,已经可以完美实现这个功能需求,发现自己做了个白工。 不过做了不能白…

Ghost Buster Pro for mac(快速清理卸载的应用残存文件)

Ghost Buster Pro for mac可从您已卸载的应用程序中查找并删除文件。该应用程序速度快如闪电,可立即释放内存。 许多应用程序都安装在计算机上,但它们通常只会在您的计算机上停留很短的时间。每个应用程序都会创建文件,但删除应用程序不会删…

若依字典使用

若依字典使用 此文章使用的若依是大于3.7.0版本的 JS文件配置 main.js中引入全局变量和方法 import DictData from /components/DictData DictData.install()DictData.js配置 可以从DictData.js中看出在install方法中调用了字典查询接口,在install方法中可以做…

前端 | (五)CSS三大特性及常用属性 | 尚硅谷前端html+css零基础教程2023最新

学习来源:尚硅谷前端htmlcss零基础教程,2023最新前端开发html5css3视频 文章目录 📚CSS三大属性🐇层叠性🐇继承性🐇优先级 📚CSS常用属性🐇像素的概念🐇颜色的表示⭐️表…