From b7ae8973a8cbd8e02f7b85c85487d8286933cae9 Mon Sep 17 00:00:00 2001 From: Lxy Date: Sat, 4 Jul 2026 09:48:34 +0800 Subject: [PATCH] feat(cache): add Redis client module --- app/redis_client.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 app/redis_client.py diff --git a/app/redis_client.py b/app/redis_client.py new file mode 100644 index 0000000..d92847b --- /dev/null +++ b/app/redis_client.py @@ -0,0 +1,31 @@ +import logging +import redis +from app.config import REDIS_HOST, REDIS_PORT, REDIS_DB, REDIS_PASSWORD + +logger = logging.getLogger(__name__) + +redis_client = None + + +def init_redis(): + """初始化 Redis 客户端,失败时返回 None""" + global redis_client + try: + redis_client = redis.Redis( + host=REDIS_HOST, port=REDIS_PORT, db=REDIS_DB, + password=REDIS_PASSWORD or None, + decode_responses=True, + socket_connect_timeout=5, + ) + redis_client.ping() + logger.info("Redis 连接初始化成功") + return redis_client + except Exception as e: + logger.warning(f"Redis 初始化失败: {e}") + redis_client = None + return None + + +def get_redis(): + """获取 Redis 客户端实例""" + return redis_client