当前位置:网站首页>Redis has four methods for checking big keys, which are necessary for optimization
Redis has four methods for checking big keys, which are necessary for optimization
2022-07-05 04:54:00 【Java confidant_】
Click on the official account , Practical technical articles Know in time
Abstract : 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
4、 Use go-redis-bigkv
go-redis-bigkv Is a small tool developed by myself . Mainly be based on memory command , scanning redis All of the key, And the results are according to Sort by memory size , And the sorted Results output to txt In file . the reason being that With 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 .
Project address :
https://github.com/th3ee9ine/go-redis-bigk
recommend
Technical involution group , Learn together !!
PS: Because the official account platform changed the push rules. , If you don't want to miss the content , Remember to click after reading “ Looking at ”, Add one “ Star standard ”, In this way, each new article push will appear in your subscription list for the first time . spot “ Looking at ” Support us !
边栏推荐
- 2021 electrician cup idea + code - photovoltaic building integration plate index development trend analysis and prediction: prediction planning issues
- 中国金刚烷行业研究与投资预测报告(2022版)
- The 22nd Spring Festival Gala, an immersive stage for the yuan universe to shine into reality
- AutoCAD - continuous annotation
- CUDA Programming atomic operation atomicadd reports error err:msb3721, return code 1
- Rip notes [rip three timers, the role of horizontal segmentation, rip automatic summary, and the role of network]
- 54. 螺旋矩阵 & 59. 螺旋矩阵 II ●●
- AutoCAD - full screen display
- Difference between singleton and factory pattern
- Chapter 6 text processing tools for shell programming (awk)
猜你喜欢
AutoCAD - continuous annotation
Download the details and sequence of the original data access from the ENA database in EBI
AutoCAD - set layer
The 22nd Spring Festival Gala, an immersive stage for the yuan universe to shine into reality
Use assimp library to read MTL file data
質量體系建設之路的分分合合
[Business Research Report] top ten trends of science and technology and it in 2022 - with download link
49 pictures and 26 questions explain in detail what is WiFi?
【acwing】836. Merge sets
Introduction to JVM principle and process
随机推荐
2021 electrician cup idea + code - photovoltaic building integration plate index development trend analysis and prediction: prediction planning issues
[groovy] closure (closure as function parameter | code example)
Unity connects to the database
Create a pyGame window with a blue background
Function overloading
3dsmax snaps to frozen objects
JVM 原理和流程简介
【Leetcode】1352. 最后 K 个数的乘积
质量体系建设之路的分分合合
Manually implement heap sorting -838 Heap sort
Unity get component
xss注入
Introduce Hamming distance and calculation examples
2020-10-27
Error statuslogger log4j2 could not find a logging implementation
次小生成树
JMeter -- distributed pressure measurement
775 Div.1 B. integral array mathematics
The first topic of ape Anthropology
中国聚氨酯硬泡市场调研与投资预测报告(2022版)