refactor: 更新视频队列键名以提高代码可读性,并添加项目配置文件

This commit is contained in:
晓丰 2025-05-20 21:15:41 +08:00
parent 62184e8ad8
commit b5f611f21c

20
DB.py
View File

@ -76,9 +76,9 @@ class DBVidcon:
} }
def __init__(self): def __init__(self):
self.list_key = "video_kw_queue" self.l1_list_key = "video_l1_queue"
self.error_list_key = "error_save_queue" self.error_list_key = "error_save_queue"
self.urgent_list_key = "video_urgent_queue" self.l0_list_key = "video_l0_queue"
self.conn = pymysql.connect(**self._MYSQL_CONF) self.conn = pymysql.connect(**self._MYSQL_CONF)
self.cursor = self.conn.cursor() self.cursor = self.conn.cursor()
self.redis = redis.Redis(**self._REDIS_CONF) self.redis = redis.Redis(**self._REDIS_CONF)
@ -176,23 +176,23 @@ class DBVidcon:
def rollback_records(self, raws): def rollback_records(self, raws):
if isinstance(raws, str): if isinstance(raws, str):
raws = [raws] raws = [raws]
self.redis.lpush(self.urgent_list_key, *raws) self.redis.lpush(self.l0_list_key, *raws)
@redis_retry(max_retries=3) @redis_retry(max_retries=3)
def rollback_urgent(self, raws): def rollback_urgent(self, raws):
if isinstance(raws, str): if isinstance(raws, str):
raws = [raws] raws = [raws]
try: try:
self.redis.lpush(self.urgent_list_key, *raws) self.redis.lpush(self.l0_list_key, *raws)
except redis.exceptions.ConnectionError as e: except redis.exceptions.ConnectionError as e:
print("[Redis urgent rollback error]", e) print("[Redis urgent rollback error]", e)
self.reconnect_redis() self.reconnect_redis()
self.redis.lpush(self.urgent_list_key, *raws) self.redis.lpush(self.l0_list_key, *raws)
@redis_retry(max_retries=3) @redis_retry(max_retries=3)
def item_keyword(self, count: int = 20): def item_keyword(self, count: int = 20):
try: try:
urgent_items = self.fetch_from_redis(count, list_key=self.urgent_list_key) urgent_items = self.fetch_from_redis(count, list_key=self.l0_list_key)
except Exception as e: except Exception as e:
print("[Redis urgent pop error]", e) print("[Redis urgent pop error]", e)
self.reconnect_redis() self.reconnect_redis()
@ -200,7 +200,7 @@ class DBVidcon:
if urgent_items: if urgent_items:
return urgent_items, 1 return urgent_items, 1
try: try:
items = self.fetch_from_redis(count, list_key=self.list_key) items = self.fetch_from_redis(count, list_key=self.l1_list_key)
except Exception as e: except Exception as e:
print("[Redis normal pop error]", e) print("[Redis normal pop error]", e)
self.reconnect_redis() self.reconnect_redis()
@ -213,7 +213,7 @@ class DBVidcon:
return return
if isinstance(payloads, str): if isinstance(payloads, str):
payloads = [payloads] payloads = [payloads]
self.redis.rpush(self.list_key, *payloads) self.redis.rpush(self.l1_list_key, *payloads)
print(f"[回滚] 已退回 {len(payloads)}") print(f"[回滚] 已退回 {len(payloads)}")
@mysql_retry() @mysql_retry()
@ -318,8 +318,8 @@ class DBVidcon:
""" """
# 注意redis.llen 返回 int # 注意redis.llen 返回 int
return ( return (
self.redis.llen(self.urgent_list_key) == 0 self.redis.llen(self.l0_list_key) == 0
and self.redis.llen(self.list_key) == 0 and self.redis.llen(self.l1_list_key) == 0
) )
@redis_retry(max_retries=3) @redis_retry(max_retries=3)