1 redis管道技术的诞生原因
redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。
因此无论是发出请求还是接收响应,都必须经过网络传输。
即客户端必须接收到服务端完整的响应,才能进行后续请求。
网络传输不可避免的会造成一定的延迟,特别是在跨机器远程访问redis的时候。
一条命令对应一次请求和响应的话,大量命令累计的延迟会显得很高。
所以诞生了redis管道命令。
2 正常命令和管道命令流程图
由流程图可知,正常命令会一条命令对应一次请求响应。
如果数据量大,这将会花费大量的时间。
而管道命令,是将命令存储在redis客户端,然后通过管道统一执行,统一返回结果。
redis管道通过减少客户端和服务器端的通信次数,减少的I/O的调用次数,来达到减少通信传输中往返时间的目的。
3 注意事项
由于redis的管道要求服务器一次性的将请求返回,因此redis服务端只能将靠前命令处理的结果暂时缓存起