今天小編給大家分享的是使用redis性能測試與客戶端連接的案例,很多人都不太了解,今天小編為了讓大家更加了解redis性能測試與客戶端連接的方法,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。
為安新等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及安新網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、安新網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!Redis 性能測試
語法:
redis-benchmark [option] [option value]
實(shí)例
實(shí)例一
以下實(shí)例同時(shí)執(zhí)行 1000 個(gè)請(qǐng)求來檢測性能:
$ redis-benchmark -n 1000 -q
ps: 本地 docker 暫時(shí)不支持命令。結(jié)果跳過,請(qǐng)自行測試。
redis:6379> benchmark -n 1000 -q (error) ERR unknown command 'benchmark'
實(shí)例二
主機(jī)為 127.0.0.1,端口號(hào)為 6379,執(zhí)行的命令為 set, lpush,請(qǐng)求數(shù)為 1000,通過 -q 參數(shù)讓結(jié)果只顯示每秒執(zhí)行的請(qǐng)求數(shù)。
$ redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 1000 -q
性能測試參數(shù)
序號(hào) | 選項(xiàng) | 描述 | 默認(rèn)值 |
---|---|---|---|
1 | -h | 指定服務(wù)器主機(jī)名 | 127.0.0.1 |
2 | -p | 指定服務(wù)器端口 | 6379 |
3 | -s | 指定服務(wù)器 | socket |
4 | -c | 指定并發(fā)連接數(shù) | 50 |
5 | -n | 指定請(qǐng)求數(shù) | 10000 |
6 | -d | 以字節(jié)的形式指定 SET/GET 值的數(shù)據(jù)大小 | 2 |
7 | -k | 1=keep alive 0=reconnect | 1 |
8 | -r | SET/GET/INCR 使用隨機(jī) key, SADD 使用隨機(jī)值 | |
9 | -P | 通過管道傳輸 請(qǐng)求 | 1 |
10 | -q | 強(qiáng)制退出 redis。僅顯示 query/sec 值 | |
11 | –csv | 以 CSV 格式輸出 | |
12 | -l | 生成循環(huán),永久執(zhí)行測試 | |
13 | -t | 僅運(yùn)行以逗號(hào)分隔的測試命令列表。 | |
14 | -I | Idle 模式。僅打開 N 個(gè) idle 連接并等待。 |
Redis 客戶端連接
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ù)
redis:6379> config get maxclients 1) "maxclients" 2) "10000"
實(shí)例
啟動(dòng)時(shí)設(shè)置大連接數(shù)為 999
redis-server --maxclients 999
客戶端命令
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)閉客戶端連接 |
以上就是使用redis性能測試與客戶端連接的案例的簡略介紹,當(dāng)然詳細(xì)使用上面的不同還得要大家自己使用過才領(lǐng)會(huì)。如果想了解更多,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道哦!