美文网首页
Redis封装使用

Redis封装使用

作者: 萝卜枣 | 来源:发表于2021-10-25 10:03 被阅读0次

    可直接使用如下代码,对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")
    

    相关文章

      网友评论

          本文标题:Redis封装使用

          本文链接:https://www.haomeiwen.com/subject/kpbsoltx.html