redis bigKey问题

bigKey的产生

1、使用String存储了大文件的二进制。

2、使用集合没有考虑到数据的规模,或者规模的增长。

3、哈希中冗余了大量键值对。

bigKey问题

1、操作大key时会阻塞线程:redis是单线程。

2、网络阻塞:在网络中占用大量网络流量。

3、阻塞工作线程:其他命令不能正常执行。

如何查看?

1、使用自带的--bigkeys,但是会影响主线程。

2、使用自带的scan命令。

3、使用开源工具redis-rdb-tools等分析RDB文件。

如何处理?

1、分割:将一个大的key分成多个小key。

2、手动清理:redis4.0之后使用unlink 启动异步线程去清理一个或多个指定key。

3、采用合适的数据结构。

相关推荐
计算机毕设VX:Fegn08953 小时前
计算机毕业设计|基于springboot + vue在线考试系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
kobe_OKOK_6 小时前
tdeinge REST API 客户端
python·缓存·django
ejjdhdjdjdjdjjsl6 小时前
JSON序列化与反序列化实战指南
数据库·microsoft·c#
CC.GG7 小时前
【C++】STL容器----unordered_map和unordered_set的使用
java·数据库·c++
编程小Y7 小时前
如何优化MySQL的查询性能?
数据库·mysql
用户47949283569158 小时前
性能提升 40 倍!实战 PostgreSQL FDW 解决微服务跨库查询难题
数据库·后端
计算机毕设VX:Fegn08958 小时前
计算机毕业设计|基于springboot + vue宠物医院管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
kimi-2228 小时前
LangChain 将数据加载到 Chroma 向量数据库
数据库·langchain
麒qiqi9 小时前
理解 Linux IO 多路复用
开发语言·数据库
MediaTea10 小时前
Python:模块 __dict__ 详解
开发语言·前端·数据库·python