Redis管道
Redis是一個TCP服務器,支持請求/響應協議。 在Redis中,請求通過以下步驟完成:
- 客戶端向服務器發送查詢,並從套接字讀取,通常以阻塞的方式,用於服務器響應。
- 服務器處理命令並將響應發送回客戶端。
管道的意義
管道的基本含義是,客戶端可以向服務器發送多個請求,而不必等待回覆,並最終在一個步驟中讀取回復。
示例
要檢查Redis管道,只需啓動Redis實例,並在終端中鍵入以下命令。
$(echo -en "PING\r\n SET tutorial redis\r\nGET tutorial\r\nINCR
visitor\r\nINCR visitor\r\nINCR visitor\r\n"; sleep 10) | nc localhost 6379
+PONG
+OK
redis
:1
:2
:3
在上面的例子中,我們將使用PING命令檢查Redis連接。這裏設置了一個名稱爲tutorial
的字符串,值爲redis
。 然後得到鍵值,並增加 visitor
數量三次。 在結果中,我們可以看到所有命令都提交到Redis一次,Redis在一個步驟中提供所有命令的輸出。
管道的好處
這種技術的好處是大大提高了協議性能。通過管道從連接到本地主機速度增加五倍,因特網連接的至少快一百倍。