一 pipeline 流水线
说明: 这里讲解的不是'jenkins'的'pipeline'流水线
这里'pipeline': 管道
redis为什么要提供pipeline功能 事务和pipeline
① pipeline的理念
强调:单纯的pipeline跟'事务'没有关系
redis-cli --pipe --> 使用了'pipeline机制'
说明: '原生'的批量操作mget、mset是'原子'的,而pipeline是'非原子'的.
② python使用pipeline
③ pipeleine性能体验
说明: 官方建议使用pipeline'使用redis连接池'
说明:由于是在'本地'测试,差异性可能不大,但是如果'redis服务器在远程',效果会'更明显'
备注: 可能需要'-a'选项'密码'认证
④ pipeline + redis事务
说明: python操作'事务'需要借助'pipeline'
⑤ 最佳实践
pipeline不要太大,否则数据量太大,一方面网络I/O阻塞,另一方面增加客户端的等待时间,用户体验不好
建议:拆分pipeline成更小的pipeline.
⑥ pipeline应用场景
Pipeline 实现的原理是'队列',而队列的原理是'先进先出',这样就保证'数据的顺序性'
⑦ pipeline和原生批量命令
⑧ pipeline与事务的对比