From 2c46e85017e57d8919783d4fcfed0069ff201761 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期四, 03 八月 2023 15:01:35 +0800
Subject: [PATCH] redis上级缓存添加

---
 code_attribute/gpcode_first_screen_manager.py |   21 +++++++++++++++++----
 1 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/code_attribute/gpcode_first_screen_manager.py b/code_attribute/gpcode_first_screen_manager.py
index 6252413..2f88333 100644
--- a/code_attribute/gpcode_first_screen_manager.py
+++ b/code_attribute/gpcode_first_screen_manager.py
@@ -8,13 +8,16 @@
 from db.redis_manager import RedisUtils
 from utils import tool
 from db import redis_manager
-from third_data import  block_info
+from third_data import block_info
 
 __redisManager = redis_manager.RedisManager(0)
 
 
 def __get_redis():
     return __redisManager.getRedis()
+
+
+__first_code_data_cache = {}
 
 
 # 淇濆瓨棣栨澘绁ㄧ殑鏁版嵁
@@ -24,7 +27,8 @@
 # 4.鏈�杩戠偢寮�鏃堕棿
 # 5.鏄惁宸茬粡娑ㄥ仠
 def __save_first_code_data(code, data):
-    RedisUtils.setex(__redisManager.getRedis(),f"first_code_data-{code}", tool.get_expire(), json.dumps(data))
+    tool.CodeDataCacheUtil.set_cache(__first_code_data_cache, code, data)
+    RedisUtils.setex(__redisManager.getRedis(), f"first_code_data-{code}", tool.get_expire(), json.dumps(data))
 
 
 def __get_first_code_data(code):
@@ -32,6 +36,15 @@
     if val is None:
         return None
     return json.loads(val)
+
+
+def __get_first_code_data_cache(code):
+    cache_result = tool.CodeDataCacheUtil.get_cache(__first_code_data_cache, code)
+    if cache_result[0]:
+        return cache_result[1]
+    val = __get_first_code_data(code)
+    tool.CodeDataCacheUtil.set_cache(__first_code_data_cache, code, val)
+    return val
 
 
 # 娣诲姞杩涢鏉挎湭绛涢�夌エ
@@ -52,7 +65,7 @@
     redis = __redisManager.getRedis()
     if codes:
         for code in codes:
-            redis.srem("first_no_screen_codes", code)
+            RedisUtils.srem(redis, "first_no_screen_codes", code)
 
 
 def __get_first_no_screen_codes():
@@ -67,7 +80,7 @@
     for price in prices:
         code = price["code"]
         time_ = price["time"]
-        old_data = __get_first_code_data(code)
+        old_data = __get_first_code_data_cache(code)
         if old_data is None:
             continue
         limit_up = price["limit_up"]

--
Gitblit v1.8.0