亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

HTTP服務壓力測試工具及相關術(shù)語講解

 更新時間:2022年04月16日 14:15:22   作者:Jeff的技術(shù)棧  
這篇文章主要為大家介紹了HTTP服務壓力測試工具使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪

前言

在項目正式上線之前,我們通常需要通過壓測來評估當前系統(tǒng)能夠支撐的請求量、排查可能存在的隱藏bug,同時了解了程序的實際處理能力能夠幫我們更好的匹配項目的實際需求,節(jié)約資源成本。

壓測相關術(shù)語

  • 響應時間(RT) :指系統(tǒng)對請求作出響應的時間.
  • 吞吐量(Throughput) :指系統(tǒng)在單位時間內(nèi)處理請求的數(shù)量
  • QPS每秒查詢率(Query Per Second) :“每秒查詢率”,是一臺服務器每秒能夠響應的查詢次數(shù),是對一個特定的查詢服務器在規(guī)定時間內(nèi)所處理流量多少的衡量標準。
  • TPS(TransactionPerSecond):每秒鐘系統(tǒng)能夠處理的交易或事務的數(shù)量
  • 并發(fā)連接數(shù):某個時刻服務器所接受的請求總數(shù)

壓力測試工具

ab

ab全稱Apache Bench,是Apache自帶的性能測試工具。使用這個工具,只須指定同時連接數(shù)、請求數(shù)以及URL,即可測試網(wǎng)站或網(wǎng)站程序的性能。

通過ab發(fā)送請求模擬多個訪問者同時對某一URL地址進行訪問,可以得到每秒傳送字節(jié)數(shù)、每秒處理請求數(shù)、每請求處理時間等統(tǒng)計數(shù)據(jù)。

命令格式:

ab [options] [http://]hostname[:port]/path

常用參數(shù)如下:

-n requests 總請求數(shù)
-c concurrency 一次產(chǎn)生的請求數(shù),可以理解為并發(fā)數(shù)
-t timelimit 測試所進行的最大秒數(shù), 可以當做請求的超時時間
-p postfile 包含了需要POST的數(shù)據(jù)的文件
-T content-type POST數(shù)據(jù)所使用的Content-type頭信息

更多參數(shù)請查看官方文檔。

例如測試某個GET請求接口:

ab -n 10000 -c 100 -t 10 "http://127.0.0.1:8080/api/v1/posts?size=10"

測試POST請求接口:

ab -n 10000 -c 100 -t 10 -p post.json -T "application/json" "http://127.0.0.1:8080/api/v1/post"

wrk

wrk是一款開源的HTTP性能測試工具,它和上面提到的ab同屬于HTTP性能測試工具,它比ab功能更加強大,可以通過編寫lua腳本來支持更加復雜的測試場景。

Mac下安裝:

brew install wrk

常用命令參數(shù):

-c --conections:保持的連接數(shù)
-d --duration:壓測持續(xù)時間(s)
-t --threads:使用的線程總數(shù)
-s --script:加載lua腳本
-H --header:在請求頭部添加一些參數(shù)
--latency 打印詳細的延遲統(tǒng)計信息
--timeout 請求的最大超時時間(s)

使用示例:

wrk -t8 -c100 -d30s --latency http://127.0.0.1:8080/api/v1/posts?size=10

輸出結(jié)果:

Running 30s test @ http://127.0.0.1:8080/api/v1/posts?size=10
  8 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    14.55ms    2.02ms  31.59ms   76.70%
    Req/Sec   828.16     85.69     0.97k    60.46%
  Latency Distribution
     50%   14.44ms
     75%   15.76ms
     90%   16.63ms
     99%   21.07ms
  198091 requests in 30.05s, 29.66MB read
Requests/sec:   6592.29
Transfer/sec:      0.99MB

go-wrk

go-wrk是Go語言版本的wrk,Windows同學可以使用它來測試,使用如下命令來安裝go-wrk

go get github.com/adeven/go-wrk

使用方法同wrk類似,基本格式如下:

go-wrk [flags] url

常用的參數(shù):

-H="User-Agent: go-wrk 0.1 bechmark\nContent-Type: text/html;": 由'\n'分隔的請求頭
-c=100: 使用的最大連接數(shù)
-k=true: 是否禁用keep-alives
-i=false: if TLS security checks are disabled
-m="GET": HTTP請求方法
-n=1000: 請求總數(shù)
-t=1: 使用的線程數(shù)
-b="" HTTP請求體
-s="" 如果指定,它將計算響應中包含搜索到的字符串s的頻率

執(zhí)行測試:

go-wrk -t=8 -c=100 -n=10000 "http://127.0.0.1:8080/api/v1/posts?size=10"

輸出結(jié)果:

==========================BENCHMARK==========================
URL:                            http://127.0.0.1:8080/api/v1/posts?size=10
Used Connections:               100
Used Threads:                   8
Total number of calls:          10000
===========================TIMINGS===========================
Total time passed:              2.74s
Avg time per request:           27.11ms
Requests per second:            3644.53
Median time per request:        26.88ms
99th percentile time:           39.16ms
Slowest time for request:       45.00ms
=============================DATA=============================
Total response body sizes:              340000
Avg response body per request:          34.00 Byte
Transfer rate per second:               123914.11 Byte/s (0.12 MByte/s)
==========================RESPONSES==========================
20X Responses:          10000   (100.00%)
30X Responses:          0       (0.00%)
40X Responses:          0       (0.00%)
50X Responses:          0       (0.00%)
Errors:                 0       (0.00%)

以上就是HTTP服務壓力測試工具及相關術(shù)語講解的詳細內(nèi)容,更多關于HTTP服務壓力測試工具的資料請關注腳本之家其它相關文章!

相關文章

  • go語言發(fā)送smtp郵件的實現(xiàn)示例

    go語言發(fā)送smtp郵件的實現(xiàn)示例

    這篇文章主要介紹了go發(fā)送smtp郵件的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Go語言的代碼組織結(jié)構(gòu)詳細介紹

    Go語言的代碼組織結(jié)構(gòu)詳細介紹

    這篇文章主要介紹了Go語言的代碼碼組織結(jié)構(gòu)詳細介紹,即Go語言源碼的文件結(jié)構(gòu),本文講解了包、main和main.main、os包等內(nèi)容,需要的朋友可以參考下
    2014-10-10
  • 深入Golang之context的用法詳解

    深入Golang之context的用法詳解

    本篇文章主要介紹了深入Golang之context的用法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • Go語言對字符串進行MD5加密的方法

    Go語言對字符串進行MD5加密的方法

    這篇文章主要介紹了Go語言對字符串進行MD5加密的方法,實例分析了Go語言對字符串進行md5加密的技巧,需要的朋友可以參考下
    2015-03-03
  • golang channel讀取數(shù)據(jù)的幾種情況

    golang channel讀取數(shù)據(jù)的幾種情況

    本文主要介紹了golang channel讀取數(shù)據(jù)的幾種情況,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • golang 如何實現(xiàn)HTTP代理和反向代理

    golang 如何實現(xiàn)HTTP代理和反向代理

    這篇文章主要介紹了golang 實現(xiàn)HTTP代理和反向代理的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05
  • golang語言編碼規(guī)范的實現(xiàn)

    golang語言編碼規(guī)范的實現(xiàn)

    這篇文章主要介紹了golang語言編碼規(guī)范的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Golang搭建grpc環(huán)境的流程步驟

    Golang搭建grpc環(huán)境的流程步驟

    這篇文章主要給大家介紹了Golang搭建grpc環(huán)境的流程步驟,文中通過圖文結(jié)合的方式給大家講解的非常詳細,對大家了解Golang搭建grpc環(huán)境有一定的幫助,需要的朋友可以參考下
    2024-03-03
  • go語言實現(xiàn)sftp包上傳文件和文件夾到遠程服務器操作

    go語言實現(xiàn)sftp包上傳文件和文件夾到遠程服務器操作

    這篇文章主要介紹了go語言實現(xiàn)sftp包上傳文件和文件夾到遠程服務器操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • go語言更高精度的Sleep實例解析

    go語言更高精度的Sleep實例解析

    這篇文章主要為大家介紹了go語言更高精度的Sleep實例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12

最新評論