redis管道(pipelining)技術

一、簡介

redis是一種基於B/S模型以及請求/響應協議的TCP服務

因此我們知道,TCP爲了可靠連接,客戶端會等待服務端的響應,通常是一個阻塞的模式等待。

二、管道技術的出現

如果每次發送一個命令,客戶端等待服務器的相應,那麼請求的命令數量大了,客戶端需要不斷請求,服務端需要不斷響應,這個過程是十分耗費時間的。因此從客戶端到服務器,再從服務器到客戶端的時間(RTT往返時間)。

使用redis的管道技術,可以將多個命令打包,一次性發送多個命令,redis在服務端將所有的運行結果打包,並返回,這就是管道技術。

三、管道使用的注意事項

使用管道發送一系列命令時,服務器將被迫回覆一個隊列回覆,在命令數量大時,是非常佔用內存的。因此redis建議,可以將大批量的命令分批次進行。比如將1M的命令分成10K、10K的批次發送。

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