当前位置:网站首页>Redis has three methods for checking big keys, which are necessary for optimization
Redis has three methods for checking big keys, which are necessary for optimization
2022-07-04 21:44:00 【Young】

In daily life Redis In use , Inevitably encountered because key Too much data is stored, causing requests to be slow or even blocked , This is the time to check Redis The big key To optimize the business , The following provides a summary of some troubleshooting schemes , For reference only .
One 、 What size key It's big ?
Redis practice ( For reference only ):
reasonable Key in Value Byte size of , Less than recommended 10 KB.
Too much Value Will cause data skew 、 hotspot Key、 Instance traffic or CPU Problems such as full performance , The performance impact of such problems should be avoided from the design source .
that value Bytes > 10 kb Can be used as a judgment Big key A reference value of .
Two 、 Troubleshooting key Methods
1、 Use command --bigkeys
--bigkeys yes redis The order that comes with you , To the whole Key scan , Statistics string,list,set,zset,hash The largest of these common data types key.
string The type of statistics is value Bytes of ; in addition 4 Types of complex structures count the number of elements , Can not be seen intuitively value Bytes occupied , therefore --bigkeys For analysis string Large of type key It is useful to , The type of complex structure also needs some third-party tools .
notes : Fewer elements , not always value not big ; There are many elements , Not necessarily. value Big
redis-cli -h 127.0.0.1 -p 6379 -a "password" --bigkeys
--bigkeys In order to scan Scan all by delaying calculation key, Therefore, there will be no blocking during execution redis, But there are a large number of instances keys when , The command takes a long time to execute , In this case, it is suggested that slave Scan up .
–-bigkeys In fact, it is to find the largest of the types key, maximal key It doesn't have to be big key, maximal key Not more than 10kb Words , It means that there is no big key.
But if a certain type has more big key (>10kb), Statistics only top1 the key, If you want to count all greater than 10kb Of key, Need to scan with third-party tools rdb Persistent files .
2、 Use memory Command view key Size ( Support only Redis 4.0 Later versions )
redis-cli -h 127.0.0.1 -p 6379 -a password
MEMORY USAGE keyname1
(integer) 157481
MEMORY USAGE keyname2
(integer) 312583
3、 Use Rdbtools tool kit
Rdbtools yes python Written A third-party open source tool , Used to resolve Redis Snapshot file . In addition to parsing rdb file , It also provides statistics of individual key Tools of size .
1、 install
git clone https://github.com/sripathikrishnan/redis-rdb-tools
cd redis-rdb-tools sudo && python setup.py install
2、 Use
from dump.rdb Snapshot file statistics , Will all > 10kb Of key Output to a csv file
rdb dump.rdb -c memory --bytes 10240 -f live_redis.csv
边栏推荐
猜你喜欢
![Compréhension approfondie du symbole [langue C]](/img/4b/26cf10baa29eeff08101dcbbb673a2.png)
Compréhension approfondie du symbole [langue C]

Enlightenment of maker thinking in Higher Education

Huawei ENSP simulator configures DHCP for router

IIC (STM32)
![[wechat applet] collaborative work and release](/img/14/2658cf0ba6be9432c74b2490e53d05.png)
[wechat applet] collaborative work and release

How is the entered query SQL statement executed?

一文掌握数仓中auto analyze的使用

Huawei ENSP simulator enables devices of multiple routers to access each other

LambdaQueryWrapper用法

Huawei ENSP simulator layer 3 switch
随机推荐
【C语言】符号的深度理解
For MySQL= No data equal to null can be found. Solution
面试官:说说XSS攻击是什么?
解决异步接口慢导致的数据错乱问题
如何使用ConcurrentLinkedQueue做一个缓存队列
杰理之增加进关机前把触摸模块关闭流程【篇】
Huawei ENSP simulator layer 3 switch
巅峰不止,继续奋斗!城链科技数字峰会于重庆隆重举行
Huawei ENSP simulator configures ACL access control list
2021 CCPC 哈尔滨 I. Power and Zero(二进制 + 思维)
A quick start to fastdfs takes you three minutes to upload and download files to the ECS
Delphi SOAP WebService 服务器端多个 SoapDataModule 实现相同的接口方法,接口继承
QT—绘制其他问题
2022 version of stronger jsonpath compatibility and performance test (snack3, fastjson2, jayway.jsonpath)
[weekly translation go] how to code in go series articles are online!!
案例分享|金融业数据运营运维一体化建设
Minidom module writes and parses XML
Kubeadm初始化报错:[ERROR CRI]: container runtime is not running
Configuration of DNS server of Huawei ENSP simulator
Flutter TextField示例