今天爱分享给大家带来Pipeline有什么好处,为什么要用pipeline?希望能够帮助到大家。
未使用Pipeline
redis 执行一次操作所需要的时间:1 次时间 = 1 次网络时间 + 1次命令时间
执行 n 次就需要:n 次时间 = n 次网络时间 + n 次命令时间
使用Pipeline
由于命令时间非常短,影响时间开销的主要是网络时间,所以我们可以把一组命令打包,然后一次发送过去。这样的话,时间开销就变为:1 次 pipeline(n条命令) = 1 次网络时间 + n 次命令时间
pipeline 的好处
省略由于单线程导致的命令排队时间,一次命令的消耗时间=一次网络时间 + 命令执行时间
比起命令执行时间,网络时间很可能成为系统的瓶颈
pipeline的作用是将一批命令进行打包,然后发送给服务器,服务器执行完按顺序打包返回。
通过pipeline,一次pipeline(n条命令)=一次网络时间 + n次命令时间
pipeline注意事项
每次pipeline携带数量不推荐过大,否则会影响网络性能
pipeline每次只能作用在一个Redis节点上