redis中bigkey扫描脚本的示例分析
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,这篇文章给大家分享的是有关redis中bigkey扫描脚本的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。我对这个脚本进行了一个压力测试,在redis的内存为15G
千家信息网最后更新 2025年11月06日redis中bigkey扫描脚本的示例分析
这篇文章给大家分享的是有关redis中bigkey扫描脚本的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
我对这个脚本进行了一个压力测试,在redis的内存为15G,key的数量为2KW,ops为40K到80K之间,在这种情况下,阿里云的脚本完全不能跑成功(估计跑出来的时间以天为单位),主要原因是每确认一个key的情况,就需要与redis交互多次。因此,我对它的脚本进行了改造,加入了pipeline和debug object方法,脚本如下:
import sysimport redis def find_big_key_normal(db_host, db_port, db_password, db_num): client = redis.StrictRedis(host=db_host, port=db_port, password=db_password, db=db_num) i=0 temp = client.scan(cursor=i,count=1000) j =0 while temp[0]>0 : i=temp[0] j=j+len(temp[1]) try: r = client.pipeline(transaction=False) for k in temp[1]: r.debug_object(k) tempA = r.execute() x = 0 for key in tempA: length = key.get("serializedlength") ##type = key.get("encoding") if length > 10240 : type = client.type(temp[1][x]) print temp[1][x], type,length x=x+1 except : print "a execption come" temp = client.scan(cursor=i,count=1000) if __name__ == '__main__': if len(sys.argv) != 4: print 'Usage: python ', sys.argv[0], ' host port password ' exit(1) db_host = sys.argv[1] db_port = sys.argv[2] db_password = sys.argv[3] r = redis.StrictRedis(host=db_host, port=int(db_port), password=db_password) nodecount = 1 keyspace_info = r.info("keyspace") for db in keyspace_info: print 'check ', db, ' ', keyspace_info[db] find_big_key_normal(db_host, db_port, db_password, db.replace("db", ""))我对上面的脚本同样进行了一个压力测试,在redis的内存为15G,key的数量为2KW,ops为40K到80K之间,在这种情况下:
脚本10分钟跑完,完全可用。
感谢各位的阅读!关于"redis中bigkey扫描脚本的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
脚本
情况
示例
分析
之间
内存
内容
压力
数量
更多
篇文章
测试
不错
实用
成功
单位
原因
文章
方法
时间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技的温暖
手机软件开发 案例
互联网加电子科技
清oracle数据库归档
所有我的世界服务器
无基础能学软件开发
陕西专业软件开发外包
模块软件开发用什么工具
世界银行wdi数据库
ftp服务器速度怎么样
服务器连接电视显示屏
大学健康网络安全书
体验服的服务器未响应是什么意思
太原应届生大专计算机网络技术
r630服务器大小
tp5+多用户的数据库建立
软件开发的税务费率
组态王支持缓存数据库吗
研发软件开发课英语
吉大正元国内网络安全排第几
手游方舟pvp服务器招管理
智理互联网科技有限公司
长春先进网络技术参考价格
网络安全教学基础
ob数据库
泰坦陨落2服务器好了没
布布网络技术有限公司
网络安全 龙头
主题数据库如何确定
超级玛丽铃声软件开发