文章目錄
- 1、概述
- 2、壓測實戰
1、概述
Redis一般會用在高并發場景裡。在實踐中,一些項目組在上線高并發的系統前會先通過
redis-benchmark
指令對已部署好的Redis元件進行壓力測試。該壓力測試的指令格式如下:
其中,option是參數項,option value是對應的值。該指令常用的參數項如表所示。
參數名 | 含義 |
---|---|
-h | 該壓測指令指向的伺服器IP位址 |
-p | 該壓測指令指向的伺服器的端口 |
-n | 壓測用到的請求數 |
-c | 壓測所用到的并發連接配接數 |
-q | 強制退出Redis,顯示時隻給出“每秒能處理的請求數”這個值 |
-t | 壓測時運作指定的指令 |
2、壓測實戰
在運作壓測指令之前,需要先確定redis容器處于Up狀态。
使用
docker exec -it redisPublisher /bin/bash
指令進入該redis容器的指令行視窗
運作壓測指令
redis-benchmark -h 127.0.0.1 -p 6379 -t set,get -n 2000
通過-h和-p參數指定壓測指向的伺服器的IP位址和端口号,通過-t參數指定壓測時運作set和get指令,通過-n參數指定壓測所用的請求數。
從上面可看出2000個set請求在0.07秒内完成,2000個get在0.07秒内完成。
從最後可看出所有的請求在2.007毫秒内完成。根據這種處理速度,每秒能處理29411.76個請求。
随後可以運作如下指令
redis-benchmark -h 127.0.0.1 -p 6379 -c 20 -n 2000 -q
其中,通過-n參數制定了請求數為2000,通過-c參數制定了壓測所用的并發數為20,-q參數指定了展示的格式。這裡沒有通過-t參數指定壓測所需要的指令,是以将給出多個指令的壓測結果。