JMeter 性能測試

Jmeter 用戶手冊

名詞解釋:

RPS:每秒請求數-每秒向服務器發送多少請求數(一個場景,系統面臨多大的壓力)
TPS:每秒事務數-每秒能夠處理多少請求/事務數性能評價標準(其中的一個核心指標,吞吐量)
RT:響應時間,指的是業務從客戶端發起到客戶端接收時間
線程組:線程-虛擬用戶(VU),不同場景不同線程組
循環:控制線程任務執行的次數
任務:線程組內部的邏輯步驟

壓測場景
  • 具體場景:比如壓測目標:確認系統能否達到 20 TPS,持續壓測 10 s
    前提:模擬出 RPS 達到 20 RPS

  • 第一種錯誤方案:線程數:1 ,Ramp-UP:1,循環:20?
    1、壓測時間-太短,不準確
    2、一個線程循環 20 次,并不是模擬 20 RPS
    1個線程1秒可能發起幾百次請求,任務執行的速度很快–8 ms–1000ms/8=125 RPS

  • 第二種錯誤方案:線程數:20 ,Ramp-UP:1,循環:永遠,持續時間 10s?
    1、RPS 遠遠超出預料范圍(1600 RPS),服務器是否能承受這么大的壓力?
    2、模擬壓測場景脫離實際,如果服務器宕機,則壓測結果沒有任何參考意義!
    如何調整?

    • 第一種調整方案:調整線程數量,比如將線程數調整為 1 ,但這種方案仍舊達不到目標
    • 第二種調整方案:調整任務執行的頻率:比如:加定時器-常數吞吐量定時器,每分鐘樣本量 60個,基于只有此線程,這樣設置后,每秒執行一次線程任務,即 20 個請求
  • 第三種錯誤方案:線程數:20 ,Ramp-UP:1,循環:永遠,持續時間 10s,常數吞吐量定時器(每分鐘樣本量 60 個)–【巨大 BUG】

    • 因為并發量越大,響應時間越慢,可能超過 1 秒,導致壓測結果不準確

    • 場景細化:20 個線程工作(響應時間需要 3 s)

      • 第一秒:20 個線程發送 http 請求—RPS:20
      • 第二秒:0 個線程發送 http 請求—RPS:0
      • 第三秒:0 個線程發送 http 請求—RPS:0
      • 第四秒:20 個線程發送 http 請求—RPS:20
    • 最后正確調整方案:每分鐘樣本量 1200 個,基于所有活動線程

    • 場景細化:20 個線程工作(響應時間需要 3 s)

      • 第一秒:0-20 編號線程發送 http 請求—RPS:20
      • 第二秒:20-40 編號線程發送 http 請求—RPS:20
      • 第三秒:40-60 編號線程發送 http 請求—RPS:20
      • 第四秒:0-20 編號線程發送 http 請求—RPS:20

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/72575.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/72575.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/72575.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Go語言的負載均衡

Go語言的負載均衡 引言 在互聯網快速發展的今天,服務器的壓力越來越大。隨著用戶的增加,單一服務器很難滿足所有請求,導致延遲增加,服務質量下降。負載均衡,作為一種重要的技術手段,能夠有效地分散用戶請…

【Mac 從 0 到 1 保姆級配置教程 09】09. 快速配置終端復用工具 tmux 和 oh-my-tmux

文章目錄 1. 前言2. 安裝 tmux3. 配置 tmux4. 安裝 oh-my-tmux5. 最后6. 參考資料7. 系列教程 Mac 從 0 到 1 保姆級配置教程目錄,點擊即可跳轉對應文章: 【Mac 從 0 到 1 保姆級配置教程 00】 - 教程說明 【Mac 從 0 到 1 保姆級配置教程 01】 - 安裝無…

【每日學點HarmonyOS Next知識】屏幕參數、半模態相關、三集聯動、只顯示部分卡面,自定義繪制

1、HarmonyOS 需要 獲取屏幕 xdpi 與 ydpi 數據? 可以通過display.getDefaultDisplaySync參考鏈接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-display-V5 ohos.display (屏幕屬性) :屏幕屬性提供管理…

Java 大視界 -- 基于 Java 的大數據機器學習模型的遷移學習應用與實踐(129)

💖親愛的朋友們,熱烈歡迎來到 青云交的博客!能與諸位在此相逢,我倍感榮幸。在這飛速更迭的時代,我們都渴望一方心靈凈土,而 我的博客 正是這樣溫暖的所在。這里為你呈上趣味與實用兼具的知識,也…

通義萬相 2.1 與藍耘智算平臺的深度協同,挖掘 AIGC 無限潛力并釋放巨大未來價值

我的個人主頁 我的專欄: 人工智能領域、java-數據結構、Javase、C語言,希望能幫助到大家!!! 點贊👍收藏? 引言:AIGC 浪潮下的新機遇 在當今數字化飛速發展的時代,人工智能生成內容&…

【BERT和GPT的區別】

BERT采用完形填空(Masked Language Modeling, MLM)與GPT采用自回歸生成(Autoregressive Generation)的差異,本質源于兩者對語言建模的不同哲學導向與技術目標的根本分歧。這種選擇不僅塑造了模型的架構特性&#xff0c…

Java實體類轉JSON時如何避免null值變成“null“?

在Java開發中,實體類與JSON的轉換是一個非常常見的需求。今天,我們要聊聊一個特別的重要但又常常被忽視的問題:當我們將Java實體類轉換為JSON格式時,如何處理那些null值,避免它們在JSON中出現為字符串“null”呢&#…

五大基礎算法——枚舉算法

枚舉算法 是一種通過遍歷所有可能的解來尋找問題答案的算法思想。它通常用于解決那些解空間有限且可以直接列舉所有可能情況的問題。以下是枚舉算法的核心概念、適用場景、實現方法及經典例題: 一、核心概念 解空間 所有可能的解的集合。 遍歷 通過循環或遞歸逐一檢…

C語言高級學習之變量和內存分布

一.變量和內存分布 1.課程要求 2.技術層次 3.C語言標準 1.3.1 K&R C 起初,C語言沒有官方標準。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩柯林漢(Brian Kernighan) 和 丹尼斯里奇(D…

【004】deepseek本地化部署后,python的調用方式_#py

python調用本地deepseek 1 本地化部署deepseek2 python調用方式 1 本地化部署deepseek 已經有很多大佬們說了不少部署本地化部署deepseek的工作了,我就不過多重復了。 先安裝Ollama軟件,再通過Ollama獲取deepseek的模型文件,大家根據電腦的配…

藍橋杯學習-12遞歸

12遞歸 1.概述 2.幾個遞歸模板 (1)求階乘 int f(int n){ if(n 1) return 1; return f(n-1) * n; }(2)斐波拉契序列 int f(int n){ if(n 1 || n 2) return n; return f(n - 1) f(n - 2); }例題一-藍橋5194 int f(int n){if(n 0) return 1;if(n % 2 0) return f(n / 2)…

Python----數據可視化(Pyecharts三:繪圖二:漣漪散點圖,K線圖,漏斗圖,雷達圖,詞云圖,地圖,柱狀圖折線圖組合,時間線輪廓圖)

1、漣漪特效散點圖 from pyecharts.globals import SymbolType from pyecharts.charts import EffectScatter from pyecharts.faker import Faker from pyecharts import options as opts from pyecharts.globals import ThemeType # 繪制圖表 es (EffectScatter(init_optsop…

自然語言處理預訓練模型的研究綜述

📕參考::2020-11-02,https://kns.cnki.net/kcms/detail/11.2127.tp.20201030.1952.017.html 主要是這篇文章的自己摘了點筆記。 預訓練模型的深度學目標是如何使預訓練好的模型處于良好的初始狀態,在下游任務中達到更好的性能表現…

ES6(1) 簡介與基礎概念

1. ES6 簡介 ES6(ECMAScript 6)是 JavaScript 的一個重要版本,它在 ES5 的基礎上進行了擴展和優化。ES6 主要應用于現代 Web 開發,提高了 JavaScript 的編程效率和可讀性。 2. ES6 與 JavaScript 的關系 JavaScript 是一種基于 E…

HTML深度解讀

## 引言 HTML(HyperText Markup Language)是構建網頁的基礎語言。自1991年由Tim Berners-Lee發明以來,HTML已經經歷了多次版本更新,從HTML 1.0到HTML5,每一次更新都帶來了新的特性和功能。本文將深入探討HTML的核心概…

一次Linux下 .net 調試經歷

背景: Xt160Api, 之前在windows下用.net調用,沒有任何問題。 但是移植到Linux去后,.net程序 調用 init(config_path) 總是報錯 /root/test 找不到 traderApi.ini (/root/test 是程序目錄) 然后退出程序 解決過程: 于是考慮是不是參數傳錯了&…

iOS底層原理系列01-iOS系統架構概覽-從硬件到應用層

1. 系統層級結構 iOS系統架構采用分層設計模式,自底向上可分為五個主要層級,每層都有其特定的功能職責和技術組件。這種層級化結構不僅使系統更加模塊化,同時也提供了清晰的技術抽象和隔離機制。 1.1 Darwin層:XNU內核、BSD、驅動…

k8s 修改節點驅逐閾值

編輯 /var/lib/kubelet/config.yaml 文件 kind: KubeletConfiguration evictionHard:nodefs.available: "5%" # 降低磁盤壓力觸發閾值imagefs.available: "10%" # 調整容器鏡像存儲觸發閾值nodefs.inodesFree: "3%

日志存儲與分析

日志是系統運行的詳細記錄,包含各種事件發生的主體、時間、位置、內容等關鍵信息。出于運維可觀測、網絡安全監控及業務分析等多重需求,企業通常需要將分散的日志采集起來,進行集中存儲、查詢和分析,以進一步從日志數據里挖掘出有…

PHP與MySQL的高效數據交互:最佳實踐與優化技巧

在現代Web開發中,PHP與MySQL的組合仍然是最常見的技術棧之一。PHP作為一種廣泛使用的服務器端腳本語言,與MySQL這一強大的關系型數據庫管理系統相結合,能夠構建出功能強大且高效的Web應用。然而,隨著數據量的增長和用戶需求的提升…