• Redis连接


    Python操作Redis连接

    linux安装:https://www.redis.com.cn/linux-install-redis.html

    windows安装:https://www.redis.com.cn/redis-installation.html

    1.Redis连接

    import redis
    
    # decode_response=True 指定输出str类型(redis输出的数据类型为bytes)
    rdb = redis.Redis(host='localhost', port=6379, db=15, password='xx', decode_response=True)
    rdb.set(name='A', value='123', ex=None, px=None, nx=False, xx=False)
    a = rdb.get('A')
    

    2. Redis连接池

    # 方式一:Redis连接池(官方不推荐)
    from redis import ConnectionPool, Redis
    
    # decode_response=True 指定输出str类型(redis输出的数据类型为bytes)
    # max_connections=10 指定连接数
    pool = ConnectionPool(host='localhost', port=6379, db=15, password='xx', decode_response=True, max_connections=10)
    rdb = Redis(connection_pool=pool)
    rdb.set('B', '777')
    b = rdb.get('B')
    
    # 方式二:StrictRedis连接池
    from redis import ConnectionPool, StrictRedis
    
    # decode_response=True 指定输出str类型(redis输出的数据类型为bytes)
    # max_connections=10 指定连接数
    pool = ConnectionPool(host='localhost', port=6379, db=15, password='xx', decode_response=True, max_connections=10)
    rdb = StrictRedis(connection_pool=pool)
    rdb.set('C', '778')
    b = rdb.get('C')
    

    3.Redis管道

    redis-python 默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作

    pipeline 则支持在连接和断开之间,执行多个操作

    from redis import ConnectionPool, StrictRedis
    import time
    
    pool = ConnectionPool(host='localhost', port=6379, db=15, password='xx', decode_responses=True)
    r = redis.Redis(connection_pool=pool)
    
    # 默认的情况下,管道里执行的命令可以保证执行的原子性
    # pipe = r.pipeline(transaction=False) 可以禁用这一特性。
    # pipe = r.pipeline(transaction=True)  默认情况
    # 集群模式下使用pipeline,在创建pipeline的对象时,需指定
    # pipe =conn.pipeline(transaction=False)
    
    pipe = r.pipeline() # 创建一个管道
    
    # pipe.multi() 启动管道的事务块,可通过`execute`结束事务块
    pipe.set('name', 'jack')
    pipe.set('age', 20)
    pipe.sadd('set_name', 'a', 'b')
    pipe.execute()
    
  • 相关阅读:
    Golang-单元测试
    Golang-Json序列化和反序列化
    Golang-文件操作
    Golang-demo
    Golang-demo练习
    Golang-类型断言
    Golang-面向对象编程三大特性-多态
    Golang-接口(interface)
    Golang-面向对象编程三大特性-继承、多重继承
    块状元素和内联元素 【转】
  • 原文地址:https://www.cnblogs.com/bbiu/p/14107179.html
Copyright © 2020-2023  润新知