网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

redis里显示key大小的shell脚本

redis里可以显示key大小的shell脚本,很方便的定位redis里有哪些大key。

创新互联专注于港南网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供港南营销型网站建设,港南网站制作、港南网页设计、港南网站官网定制、成都微信小程序服务,打造港南网络公司原创品牌,更为您提供港南网站排名全网营销落地服务。

脚本内容如下:

# cat redis-print-keysize.sh

#!/usr/bin/env bash


human_size() {

        awk -v sum="$1" ' BEGIN {hum[1024^3]="Gb"; hum[1024^2]="Mb"; hum[1024]="Kb"; for (x=1024^3; x>=1024; x/=1024) { if (sum>=x) { printf "%.2f %s\n",sum/x,hum[x]; break; } } if (sum<1024) print "1kb"; } '

}


#redis_cmd='redis-cli'


redis_cmd='redis-cli -n 10'



# get keys and sizes

for k in `$redis_cmd keys "*"`; do key_size_bytes=`$redis_cmd debug object $k | perl -wpe 's/^.+serializedlength:([\d]+).+$/$1/g'`; size_key_list="$size_key_list$key_size_bytes $k\n"; done


# sort the list

sorted_key_list=`echo -e "$size_key_list" | sort -n`


# print out the list with human readable sizes

echo -e "$sorted_key_list" | while read l; do

    if [[ -n "$l" ]]; then

        size=`echo $l | perl -wpe 's/^(\d+).+/$1/g'`; hsize=`human_size "$size"`; key=`echo $l | perl -wpe 's/^\d+(.+)/$1/g'`; printf "%-10s%s\n" "$hsize" "$key";

    fi

done


脚本说明:

扫描哪个db,修改脚本里对应redis_cmd的位置,加入 -n选项,例如:


# redis-cli info  keyspace | grep db10

db10:keys=6,expires=0,avg_ttl=0

显示db10的里的6个key的大小:

将redis_cmd='redis-cli'改为redis_cmd='redis-cli -n 10'

运行:

# ./redis_key_sizes.sh

1kb        prod_domain_error

1kb        prod_solr_error

200.86 Kb  test_buffer_error

241.55 Kb  prod_comment_error

19.20 Mb   prod_ref_15_error

70.55 Mb   prod_ref_151_error


当前名称:redis里显示key大小的shell脚本
文章出自:http://bjjierui.cn/article/pdipso.html

其他资讯