9. Redis封装使用
可直接使用如下代码,对redis进行直接的使用。
封装代码:
import redis
import os
def singleton(cls):
""" 单例模式装饰器 """
instances = {}
def get_instance(*args, **kwargs):
if cls not in instances:
instances[cls] = cls(*args, **kwargs)
return instances[cls]
return get_instance
# 创建一个带有装饰器的类
@singleton
class RedisPool:
def __init__(self):
self._redis_conn = None
self.pool = redis.ConnectionPool(
host=os.getenv('REDIS_IP') if os.getenv('REDIS_IP') else '127.0.0.1',
port=6379,
decode_responses=True
)
@property
def redis_conn(self) -> redis.Redis:
self._redis_conn = redis.Redis(connection_pool=self.pool)
return self._redis_conn
下次需要使用redis的时候,直接调用上面封装好的方法即可,如:
r = RedisPool().redis_conn
r.set('foo', 'bar')
r.lpush("a","b")
r.lpush("a","c")
r.lpush("a","d")
r.lpop("a")
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」