是用python脚本清理reids连接
背景:
测试环境的redis不知道咋回事突然无法连接,服务器登录查了一下发现连接数用完了。研发说雨女无瓜,测试环境删了没事,正事要紧赶紧恢复。得嘞!
> info clients # Clients connected_clients:9997 # 连接中的数量 client_recent_max_input_buffer:54366 client_recent_max_output_buffer:0 blocked_clients:57 # 阻塞中的客户端数量
再查看一下具体的信息,发现确实很多客户端都存在很久了(单位是秒),所以清一下。
以下是python清理脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | import redis def get_redis_connection_info(): r = redis.Redis(host = '192.168.1.33' , port = 6379 , password = '123456AAA' ) info = r.info( 'clients' ) # 打印当前客户端整体情况 print (info) # 获取连接列表 client_list = r.execute_command( 'CLIENT LIST' ) # 遍历删除连接,空闲时间大于一天的删除 for conn in client_list: idle_time = int (conn.get( 'idle' )) if idle_time > 86400 : conn_id = conn.get( 'id' ) r.execute_command(f 'CLIENT KILL ID {conn_id}' ) r.close() if __name__ = = "__main__" : get_redis_connection_info() |
执行完再查看一下:
虚浮。。。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了