Redis 客戶端連接

2022-06-16 16:47 更新

Redis 通過監(jiān)聽一個(gè) TCP 端口或者 Unix socket 的方式來接收來自客戶端的連接,當(dāng)一個(gè)連接建立后,Redis 內(nèi)部會(huì)進(jìn)行以下一些操作:

  • 首先,客戶端 socket 會(huì)被設(shè)置為非阻塞模式,因?yàn)?Redis 在網(wǎng)絡(luò)事件處理上采用的是非阻塞多路復(fù)用模型。
  • 然后為這個(gè) socket 設(shè)置 TCP_NODELAY 屬性,禁用 Nagle 算法
  • 然后創(chuàng)建一個(gè)可讀的文件事件用于監(jiān)聽這個(gè)客戶端 socket 的數(shù)據(jù)發(fā)送

最大連接數(shù)

在 Redis2.4 中,最大連接數(shù)是被直接硬編碼在代碼里面的,而在2.6版本中這個(gè)值變成可配置的。

maxclients 的默認(rèn)值是 10000,你也可以在 redis.conf 中對(duì)這個(gè)值進(jìn)行修改。

config get maxclients

1) "maxclients"
2) "10000"

實(shí)例

以下實(shí)例我們?cè)诜?wù)啟動(dòng)時(shí)設(shè)置最大連接數(shù)為 100000:

redis-server --maxclients 100000

客戶端命令

S.N. 命令 描述
1 CLIENT LIST 返回連接到 redis 服務(wù)的客戶端列表
2 CLIENT SETNAME 設(shè)置當(dāng)前連接的名稱
3 CLIENT GETNAME 獲取通過 CLIENT SETNAME 命令設(shè)置的服務(wù)名稱
4 CLIENT PAUSE 掛起客戶端連接,指定掛起的時(shí)間以毫秒計(jì)
5 CLIENT KILL 關(guān)閉客戶端連接
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)