From 4d321ae069fce2c0f6f7884bec8fa6c4ec534d1a Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期四, 03 八月 2023 18:25:33 +0800 Subject: [PATCH] redis连接池归还 --- code_attribute/code_volumn_manager.py | 59 +++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 33 insertions(+), 26 deletions(-) diff --git a/code_attribute/code_volumn_manager.py b/code_attribute/code_volumn_manager.py index 737c9a4..0849d48 100644 --- a/code_attribute/code_volumn_manager.py +++ b/code_attribute/code_volumn_manager.py @@ -20,8 +20,11 @@ redis = __redis_manager.getRedis() global_util.max60_volumn[code] = (max60, max60_day) global_util.yesterday_volumn[code] = yesterday - RedisUtils.setex(redis, "volumn_max60-{}".format(code), tool.get_expire(), json.dumps((max60, max60_day))) - RedisUtils.setex(redis, "volumn_yes-{}".format(code), tool.get_expire(), yesterday) + try: + RedisUtils.setex(redis, "volumn_max60-{}".format(code), tool.get_expire(), json.dumps((max60, max60_day)), auto_free=False) + RedisUtils.setex(redis, "volumn_yes-{}".format(code), tool.get_expire(), yesterday, auto_free=False) + finally: + redis.connection_pool.disconnect() # 鑾峰彇鍘嗗彶閲� @@ -29,13 +32,16 @@ max60 = global_util.max60_volumn.get(code) yesterday = global_util.yesterday_volumn.get(code) redis = __redis_manager.getRedis() - if max60 is None: - max60 = RedisUtils.get(redis, "volumn_max60-{}".format(code)) - if max60: - max60 = json.loads(max60) - if yesterday is None: - yesterday = RedisUtils.get(redis, "volumn_yes-{}".format(code)) - return max60, yesterday + try: + if max60 is None: + max60 = RedisUtils.get(redis, "volumn_max60-{}".format(code), auto_free=False) + if max60: + max60 = json.loads(max60) + if yesterday is None: + yesterday = RedisUtils.get(redis, "volumn_yes-{}".format(code), auto_free=False) + return max60, yesterday + finally: + redis.connection_pool.disconnect() __today_volumn_cache = {} @@ -51,16 +57,14 @@ if code in __today_volumn_cache and volumn - __today_volumn_cache[code] < 100000: return __today_volumn_cache[code] = volumn - redis = __redis_manager.getRedis() - RedisUtils.setex(redis, "volumn_today-{}".format(code), tool.get_expire(), volumn) + RedisUtils.setex( __redis_manager.getRedis(), "volumn_today-{}".format(code), tool.get_expire(), volumn) # 鑾峰彇浠婃棩閲� def get_today_volumn(code): _volumn = global_util.today_volumn.get(code) if _volumn is None: - redis = __redis_manager.getRedis() - _volumn = RedisUtils.get(redis, "volumn_today-{}".format(code)) + _volumn = RedisUtils.get(__redis_manager.getRedis(), "volumn_today-{}".format(code)) return _volumn @@ -101,19 +105,22 @@ # 灏嗛噺浠庢暟鎹簱鍔犲叆鍐呭瓨 def load(): redis = __redis_manager.getRedis() - keys = RedisUtils.keys(redis, "volumn_max60-*") - if keys is not None: - for k in keys: - code = k.split("-")[1] - max60_volumn = RedisUtils.get(redis, k) - if max60_volumn: - max60_volumn = json.loads(max60_volumn) - global_util.max60_volumn[code] = max60_volumn - keys = RedisUtils.keys(redis, "volumn_yes-*") - if keys is not None: - for k in keys: - code = k.split("-")[1] - global_util.yesterday_volumn[code] = RedisUtils.get(redis, k) + try: + keys = RedisUtils.keys(redis, "volumn_max60-*", auto_free=False) + if keys is not None: + for k in keys: + code = k.split("-")[1] + max60_volumn = RedisUtils.get(redis, k, auto_free=False) + if max60_volumn: + max60_volumn = json.loads(max60_volumn) + global_util.max60_volumn[code] = max60_volumn + keys = RedisUtils.keys(redis, "volumn_yes-*", auto_free=False) + if keys is not None: + for k in keys: + code = k.split("-")[1] + global_util.yesterday_volumn[code] = RedisUtils.get(redis, k, auto_free=False) + finally: + redis.connection_pool.disconnect() if __name__ == "__main__": -- Gitblit v1.8.0