当前位置:首页 > 编程笔记 > 正文
已解决

redis运维(十八)pipeline

来自网友在路上 179879提问 提问时间:2023-11-23 23:30:56阅读次数: 79

最佳答案 问答题库798位专家为你答疑解惑

一  pipeline 流水线

说明: 这里讲解的不是'jenkins'的'pipeline'流水线这里'pipeline': 管道cat redis_pipe.txt | redis-cli -a 123456 -p 6379 --raw 2>/dev/null说明: redis_pipe.txt 中 '每行' 是一个'redis命令'

redis为什么要提供pipeline功能   事务和pipeline   pipeline详解

①  pipeline的理念

pipeline是为解决'RTT太大',仅仅将命令'打包一次性'发送,对整个redis的执行不造成其他任何影响

强调:单纯的pipeline跟'事务'没有关系redis-cli  --pipe  --> 使用了'pipeline机制'说明: '原生'的批量操作mget、mset是'原子'的,而pipeline是'非原子'的.

1、管道的由来,'问题引入'

2、解决'思路'

②  python使用pipeline

③  pipeleine性能体验

说明: 官方建议使用pipeline'使用redis连接池'

说明:由于是在'本地'测试,差异性可能不大,但是如果'redis服务器在远程',效果会'更明显'

备注: 可能需要'-a'选项'密码'认证

④  pipeline + redis事务

说明: python操作'事务'需要借助'pipeline'

⑤  最佳实践

pipeline不要太大,否则数据量太大,一方面网络I/O阻塞,另一方面增加客户端的等待时间,用户体验不好建议:拆分pipeline成更小的pipeline.

⑥  pipeline应用场景

Pipeline 实现的原理是'队列',而队列的原理是'先进先出',这样就保证'数据的顺序性'

⑦  pipeline和原生批量命令

⑧  pipeline与事务的对比

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"redis运维(十八)pipeline":http://eshow365.cn/6-42083-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!