Redis
Redis内存优化
·2356 字
最近工作上遇到了一些redis相关的问题,记录一下
问题:
线上redis集群存储了3亿多条数据,几乎都是hash类型,字段在2-8个不等,值都比较小,集群容量占用了大概80多G,由于key数量增长较快,短时间内缓存也无法释放,所以考虑存储上是否有可以优化的空间
Python Redis
连接redis # import redis # 连接redis def connect_redis(host, port, password): # decode_responses: 是否decode数据,否则返回数据为bytes类型, 例如hgetall返回的是dict[bytes, bytes] 而不是dict[str, str] pool = redis.ConnectionPool(host=host, port=port, password=password, decode_responses=True) cli = redis.Redis(connection_pool=pool) try: cli.ping() except: return None return cli def do_something(cli, key): data = cli.get(key) if data is None: print("key not exists") else: print(data) if __name__ == "__main__": host = "127.0.0.1" port = 6379 password = "foobared" cli = connect_redis(host, port, password) if cli is None: print("connect redis failed") else: do_something(cli, "testttttt")