主頁 >  其他 > 性能測驗理論知識

性能測驗理論知識

2021-01-04 06:16:48 其他

性能測驗思想講解

1.什么是性能測驗

什么是軟體性能

定義:軟體的性能是軟體的一種非功能特性,它關注的不是軟體是否能夠完成特定的功能,而是在完成該功能是展示出來的及時性

比如:一個登錄功能他能實作登錄操作,但是登錄程序需要10s才能進入主頁面,這就說明軟體的性能不好,

什么是性能測驗

定義:指通過自動化的測驗工具模擬多種正常、峰值以及例外負載條件來對系統的各項性能指標進行測驗,

功能測驗的時候關注的是1個人的操作,性能測驗關注的是多個人,

性能測驗什么時候做

介面測驗是最先做,性能測驗是最后做,

性能測驗是基于所有功能都測驗完畢并且修復完成,基本不改變,正常測驗流程已經全部走完,在上線前的兩三天做性能測驗,性能測驗通過則可以上線,

2.不同群體眼中的性能

用戶的視角:

  • 回應時間(還要讓我等多久?需要加載老半天才出現頁面?)
  • 確定性(為什么總是失敗?閃退?無回應?)

開發視角:

  • 架構設計是否合理?——架構設計
  • 資料庫設計是否合理?——資料庫設計
  • 代碼是否存在性能問題?——代碼
  • 是否有不合理的記憶體使用?——代碼
  • 是否有不合理的執行緒同步操作?——代碼
  • 是否有不合理的資源競爭?——代碼
  • 代碼演算法是否還能進一步提升?——代碼

系統管理員(運維)視角:

  • 服務器資源使用合理嗎?——資源利用率
  • 資料庫使用合理嗎?——資源利用率
  • 系統是否實作擴展?——可擴展性(比如:服務器動態擴展)
  • 最多支撐多少用戶訪問?——系統容量
  • 最大業務處理量?——系統容量
  • 系統有哪些潛在的瓶頸?——可擴展性
  • 更換哪些設備,添加哪些機器可以提高系統性能?——可擴展性
  • 7×24小時連續不間斷業務訪問?——穩定性

測驗眼中的性能:

官方回答:

  • 測驗人員通常是作為軟體質量控制的一個角色,不僅僅是找BUG,更需要對整個軟體的質量負責,性能也屬于質量的一部分,因此測驗人員眼中的性能應該是全面的,考慮的東西也需要全面,
  • 測驗人員需要考慮全面的性能,包括用戶、開發、運維等各個視角的性能,
  • 測驗人員在做性能測驗時除開要關注表面的現象,比如:回應時間,也需要關注本質,比如:用戶看不到的服務器資源利用率,架構設計是否合理,代碼是否合理等方面,

實際測驗:

  • 將開發視角看成一塊,運維視角也看成一塊,站在用戶的角度,模擬用戶操作,
  • 如果達標就通過,上線,
  • 如果不達標,就要判斷是開發的問題還是運維的問題,
    • 監控系統的物理資源,比如:CPU占用100%(一般是85%以內,70%、60%、50%都ok),就是運維問題,或者是記憶體占滿,帶寬打滿,
    • 運維已經調過物理資源,CPU、記憶體、帶寬等也都達標,測驗發現還有性能問題,那就是開發問題,就要指派給開發去處理,

?性能測驗的指標?是誰定的?(面試題)

產品經理和專案經理制定,

3.性能測驗的場景維度和型別

基準測驗:

在給系統施加較低壓力時,查看系統的運行狀況并記錄相關資料作為基礎參考,

比如:一個系統的性能要求是滿足100個人使用,我們就會取10-20個人去做測驗就會得到一組資料,這個數就作為基準測驗的基礎參考值

負載測驗:

是指對系統不斷地增加壓力或增加一定壓力下的持續時間,直到系統的某項或多項性能指標達到安全臨界值,例如:某種資源已經達到飽和狀態,

正常是由小往大增加,需要注意的點是需要往安全的臨界值去加,而不是往超負荷的去加,也就是說性能是走上坡路的,尋找最佳性能的那個點,如果加到發現性能下降,就需要往回退,取更小的差值,比如60直接加到70的時候出現性能指標下降,就需要取65、66、67等慢慢嘗試,找到系統最優點,

壓力測驗:

壓力測驗是評估系統處于或超過預期負載時系統的運行情況,關注點在于系統在峰值負載或超出最大載荷情況下的處理能力,

70往上加,觀察軟體是如何處理這種情況:
①系統崩潰
②所有人都無法訪問
③一部分人可以訪問,一部分人無法訪問,需要錯峰訪問(比如:考試系統查分)

穩定性測驗:

在給系統加載一定業務壓力(40%-60%)的情況下,使系統運行一段時間,一次檢測系統是否穩定,

并發測驗:

測驗多個用戶同時訪問同一個應用、同一個模塊或者資料記錄時是否存在死鎖或者其他性能問題,

4.性能測驗基本概念
  1. 回應時間(RT——Response-time)

    • 定義:從用戶發送一個請求用戶接受到服務器回傳的回應資料的這段時間就是回應時間,

    • 關鍵路徑:http請求經過網路發送到web服務器進行處理,如果需要操作DB,再由網路轉發到資料庫進行處理,然后回傳值給web服務器,web服務器最終把結果資料通過網路回傳給客戶端,

    • 回應時間計算方法:

      回應時間=呈現時間+網路傳輸時間+服務器端回應時間+應用延時時間

    • 回應時間和負載對應關系:

      理發店模型:10個理發師,理1個客戶需要1分鐘,當同時來的客戶數量小于等于10個,總時間只需1分鐘,當同時來11個客戶,總時間就需要2分鐘,以此類推21個客戶就需要3分鐘......

      拐點:

      • 回應時間突然增加,
      • 意味系統的一種或多種資源利用達到極限,
      • 通常可以利用拐點來進行性能測驗分析與定位,
  2. 吞吐量

    • 定義:單位時間內系統處理的客戶端請求的數量,(判斷系統處理能力的一個指標)

    • 計算單位:一般使用 請求數/秒 作為吞吐量的單位,可以使用 頁面數/秒 表示,另外,從業務角度來說也可以使用 訪問人數/天頁面訪問量/天 作為單位,

    • 計算方法:throughput = (number of requests)/(total time)

    • 吞吐量和負載對應關系:

      拐點:

      • 吞吐量逐漸達到飽和,
      • 意味著系統一種或多種資源利用達到了極限,
      • 通常可以利用拐點來進行性能測驗分析與定位,
  3. 并發數

    • 并發用戶數:某一物理時刻同時向系統提交請求的用戶數,提交的請求可能是同一個場景或功能,也可以是不同場景或功能,
    • 在線用戶數:某段時間內訪問系統的用戶數,這些用戶并不一定同時向系統提交請求,(榷訓——每榷訓躍用戶數)
    • 系統用戶數:系統注冊的總用戶資料,
    • 三者之間的關系:系統用戶數 >= 在線用戶數 >= 并發用戶數
  4. 資源利用率

    • 定義:指的是對不同系統資源的使用程度,通常以占用最大值的百分比來衡量(CPU、記憶體),

    • 通常需要關注的服務器資源如下:

      • CPU:就像人的大腦,主要負責相關事物的判斷以及實際處理的機制,(一般不超過80%-90%)
      • 記憶體:大腦中的記憶塊區,將眼睛、皮膚等收集到的資訊記錄起來的地方,以供CPU進行判斷,但是是臨時的,訪問速度快,如果關機或斷電,記憶體中的資料就會消失,
      • 磁盤IO:大腦中的記憶區塊,將重要的資料保存起來,永久保存,關機或斷電也不會丟失,速度慢,以便將來再次使用這些資料,(通過查看讀寫)
      • 網路:帶寬,(發送/接收的速率)
    • 資源利用率和負載對應關系:

      拐點

      • 服務器某資源使用逐漸達到飽和,
      • 通常可以利用拐點來進行性能測驗分析與定位,
    • windows的資源監視器:

      任務管理器 --> 性能 --> 資源監視器

  5. 其他常用概念

    • PV(Page View,頁面訪問量):訪問一個URL,產生一個PV,每日每個網站的總PV量是形容一個網站規模的重要指標,
    • UV(Unique Visitor,用戶訪問):作為獨立的用戶,訪問站點的所有頁面均算一個UV,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/244156.html

標籤:其他

上一篇:介面檔案規范

下一篇:程式人生:人工智能可能是盲程式員的另一種工具

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more