zoukankan      html  css  js  c++  java
  • Redis 简单使用 and 连接池(python)

    Redis 简介

    NoSQL(not only sql):非关系型数据库

    支持 key-value,  list,  set,  zset,  hash 等数据结构的存储;支持主从数据备份,集群;支持发布,订阅,通知,key 过期等特性

    Redis 的所有操作都是原子性的

    应用场景:

    1. 缓存:内存数据库
    2. 可以在某些特定应用场景下替代关系数据库,比如社交类的应用
    3. 在一些大型系统中,实现一些特定功能,比如 session 共享,购物车等

    redis 官网:https://redis.io/

    redis 中文官网:http://redis.cn/

    redis 连接池

    redis.py 使用 ConnectionPool 来管理对一个 redis server 的连接,避免每次建立、释放连接的开销。默认,每个 Redis 实例都会维护一个自己的连接池。可以直接建立一个连接池,然后作为参数Redis,这样就可以实现多个Redis实例共享一个连接池。

    # coding: utf-8
    import redis as redis_db
    from conf.setting import REDIS_HOST, REDIS_PORT, PASSWORD, DB, KEY
    
    
    class RedisPool(object):
        __Pool = None
    
        # def __init__(self):
        def __init__(self):
            self.session = self.get_conn()
    
        @staticmethod
        def get_conn():
            if not RedisPool.__Pool:
                RedisPool.__Pool = redis_db.ConnectionPool(host=REDIS_HOST, port=REDIS_PORT, password=PASSWORD, db=DB)
            #
            session = redis_db.StrictRedis(connection_pool=RedisPool.__Pool)
            return session
    
        def add_one(self, value):
            ret = self.session.lpush(KEY, value)
            return ret
    
        def take_one(self):
            vlaue = self.session.rpop(KEY)
            return vlaue
    
    
    redis_pool = RedisPool()
    

    参考链接:https://www.cnblogs.com/xiaoming279/p/6293583.html

    每天都要遇到更好的自己.
  • 相关阅读:
    Delphi 的字符及字符串 Char、AnsiChar、WideChar、PChar、PAnsiChar、PWideChar
    C# DllImport的用法
    delphi 枚举类型与字符串的转换
    MSSQL2005不能用IP访问
    Delphi制作DLL
    Delphi接口的底层实现
    MacBook下每次SourceTree每次拉取代码都要输入密码解决办法
    因子分析AF
    蒲公英组网
    485通信
  • 原文地址:https://www.cnblogs.com/kaichenkai/p/10895928.html
Copyright © 2011-2022 走看看