Redis 客戶端連線

Redis 客戶端連線

Redis 通過監聽一個 TCP 埠或者 Unix socket 的方式來接收來自客戶端的連線,當一個連線建立後,Redis 內部會進行以下一些操作:

  • 首先,客戶端 socket 會被設定為非阻塞模式,因為 Redis 在網路事件處理上採用的是非阻塞多路複用模型。
  • 然後為這個 socket 設定 TCP_NODELAY 屬性,禁用 Nagle 演算法
  • 然後建立一個可讀的檔案事件用於監聽這個客戶端 socket 的資料傳送

最大連線數

在 Redis2.4 中,最大連線數是被直接硬編碼在程式碼裡面的,而在2.6版本中這個值變成可配置的。

maxclients 的預設值是 10000,你也可以在 redis.conf 中對這個值進行修改。

config get maxclients

1) "maxclients"
2) "10000"

例項

以下例項我們在服務啟動時設定最大連線數為 100000:

redis-server --maxclients 100000

客戶端命令

S.N.命令描述
1 CLIENT LIST 返回連線到 redis 服務的客戶端列表
2 CLIENT SETNAME 設定當前連線的名稱
3 CLIENT GETNAME 獲取通過 CLIENT SETNAME 命令設定的服務名稱
4 CLIENT PAUSE 掛起客戶端連線,指定掛起的時間以毫秒計
5 CLIENT KILL 關閉客戶端連線