天天看點

Redis壓力測試實戰1、概述2、壓測實戰

文章目錄

  • 1、概述
  • 2、壓測實戰

1、概述

  Redis一般會用在高并發場景裡。在實踐中,一些項目組在上線高并發的系統前會先通過

redis-benchmark

指令對已部署好的Redis元件進行壓力測試。該壓力測試的指令格式如下:

  其中,option是參數項,option value是對應的值。該指令常用的參數項如表所示。

參數名 含義
-h 該壓測指令指向的伺服器IP位址
-p 該壓測指令指向的伺服器的端口
-n 壓測用到的請求數
-c 壓測所用到的并發連接配接數
-q 強制退出Redis,顯示時隻給出“每秒能處理的請求數”這個值
-t 壓測時運作指定的指令

2、壓測實戰

在運作壓測指令之前,需要先確定redis容器處于Up狀态。

Redis壓力測試實戰1、概述2、壓測實戰

  使用

docker exec -it redisPublisher /bin/bash

指令進入該redis容器的指令行視窗

Redis壓力測試實戰1、概述2、壓測實戰

運作壓測指令

redis-benchmark -h 127.0.0.1 -p 6379 -t set,get -n 2000

  通過-h和-p參數指定壓測指向的伺服器的IP位址和端口号,通過-t參數指定壓測時運作set和get指令,通過-n參數指定壓測所用的請求數。
Redis壓力測試實戰1、概述2、壓測實戰
Redis壓力測試實戰1、概述2、壓測實戰

  從上面可看出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參數指定壓測所需要的指令,是以将給出多個指令的壓測結果。
Redis壓力測試實戰1、概述2、壓測實戰