• Redis六(管道)


    管道

    为什么使用管道?

    Redis是一个TCP服务器,支持请求/响应协议。 在Redis中,请求通过以下步骤完成:

    • 客户端向服务器发送查询,并从套接字读取,通常以阻塞的方式,用于服务器响应。
    • 服务器处理命令并将响应发送回客户端。

    Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。 

    redis-py 

      例如,redis-py默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作,如果想要在一次请求中指定多个命令,则可以使用pipline实现一次请求指定多个命令,并且默认情况下一次pipline 是原子性操作。

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
     
    import redis
     
    pool = redis.ConnectionPool(host='10.211.55.4', port=6379)
     
    r = redis.Redis(connection_pool=pool)
     
    # pipe = r.pipeline(transaction=False)
    pipe = r.pipeline(transaction=True)
     
    pipe.set('name', 'sb')
    pipe.set('sex', 'male')
    #前面两个操作都成功才execute(),否则回滚
    pipe.execute()

    ps:默认的情况下,管道里执行的命令可以保证执行的原子性,执行pipe = r.pipeline(transaction=False)可以禁用这一特性。

  • 相关阅读:
    JS 拖动(验证码)滑块
    如何配置WebStorm开发Chrome插件项目
    常用Linux命令备查
    Vim常用快捷键汇总
    常用SQL语句备查
    Maven应用常见问题
    postgresql 关联表修改
    postgis坐标转换
    Geoserver自动发布服务
    GeoServer修改端口号
  • 原文地址:https://www.cnblogs.com/freely/p/6848309.html
Copyright © 2020-2023  润新知