redis管道(pipelining)技术

一、简介

redis是一种基于B/S模型以及请求/响应协议的TCP服务

因此我们知道,TCP为了可靠连接,客户端会等待服务端的响应,通常是一个阻塞的模式等待。

二、管道技术的出现

如果每次发送一个命令,客户端等待服务器的相应,那么请求的命令数量大了,客户端需要不断请求,服务端需要不断响应,这个过程是十分耗费时间的。因此从客户端到服务器,再从服务器到客户端的时间(RTT往返时间)。

使用redis的管道技术,可以将多个命令打包,一次性发送多个命令,redis在服务端将所有的运行结果打包,并返回,这就是管道技术。

三、管道使用的注意事项

使用管道发送一系列命令时,服务器将被迫回复一个队列回复,在命令数量大时,是非常占用内存的。因此redis建议,可以将大批量的命令分批次进行。比如将1M的命令分成10K、10K的批次发送。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章