Redis之Pipeline

1.  Pipeline概念

    1.  为什么要用Pipeline?

        redis客户端执行一条命令分为四个过程:

        1)  发送命令

        2)  命令排队

        3)  命令执行

        4)  返回结果

        其中1+4称为RTT,往返时间。

        因为redis的命令大多数都不能使用批量操作,所以执行多个命令就会产生多次RTT。如果有一种方式可以将命令一次打包执行,可以节省RTT时间,所以pipeline应运而生。

    2.  模型图更加直观展示pipeline的好处

        

 

         

 

2.  性能测试对比图

    

 

3.  原生批量命令与Pipeline对比

    1.  原生批量命令是原子的,要么成功要么失败

         Pipeline是非原子的

    2.  原生批量命令是一个命令对应多个key,Pipeline支持多个命令

    3.  原生批量命令是Redis服务端支持实现的,而Pipeline需要服务端和客户端的共同实现。

4.  使用Pipeline注意事项

    1.  Pipeline组装的命令个数有限制

    2.  Pipeline只能操作一个Redis实例           

posted @ 2022-02-17 11:08  奋斗史  阅读(1213)  评论(0)    收藏  举报