自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

性能測試的需求分析

開發(fā) 測試
性能測試最開始的需求分析工作細致與否,與后面的性能測試結果息息相關。需求分析是一個繁雜的過程,它并非我們想象的那么簡單。做需求分析除了要對系統(tǒng)的業(yè)務非常了解,還需要有深厚的性能測試知識,這樣才能夠挖掘分析出真正的性能測試需求

性能測試最開始的需求分析工作細致與否,與后面的性能測試結果息息相關。需求分析是一個繁雜的過程,它并非我們想象的那么簡單。做需求分析除了要對系統(tǒng)的業(yè)務非常了解,還需要有深厚的性能測試知識,這樣才能夠挖掘分析出真正的性能測試需求。

很多時候,性能測試的需求是比較模糊的,需要性能測試工程師去挖掘和分析。在工作中,作者經(jīng)常被問到的一個問題是: 應該設置多少個JMeter線程去壓測? 還有不懂技術的客戶提出想要做性能測試,但是沒有提供指標,只說系統(tǒng)支持100萬用戶。這些都是我們日常工作中司空見慣的泛泛的需求

此時,我們可以通過“3步法”對產(chǎn)品進行正確的需求分析和用戶模型建立。

一、剖析被測系統(tǒng)

(1) 了解系統(tǒng)架構。首先我們需要與開發(fā)人員溝通,了解清楚系統(tǒng)的部署架構采用了哪些中間件、數(shù)據(jù)庫、容器、緩存等,以及它們之間的架構關系,并畫出對應的網(wǎng)絡拓撲圖和系統(tǒng)部署架構圖

(2) 了解業(yè)務模型。首先我們需要采用用戶行為分析,分析用戶使用產(chǎn)品的習慣,確定系統(tǒng)的典型業(yè)務及發(fā)生時間。很多大型系統(tǒng)的業(yè)務使用都有流量高峰。這類系統(tǒng)業(yè)務使用的流量高峰可能出現(xiàn)在天、一月、一年中的某個時間點上或時間段內。對于新浪、網(wǎng)易等門戶網(wǎng)站,在周一到周五的早上剛上班時,可能使用郵件系統(tǒng)的用戶比較多,而在中午休息時間瀏覽熱點新聞的用戶較多;對于一般的OA系統(tǒng),早上閱讀公告的用戶較多,在其他時間可能沒有用戶使用系統(tǒng)或者僅有少量的用戶,比如秘書或領導使用系統(tǒng)起草和審批公文;對于電信繳費系統(tǒng),在月末很可能會出現(xiàn)用戶集中使用繳費業(yè)務的情況。

然后是調研歷史統(tǒng)計數(shù)據(jù),通過分析數(shù)據(jù)確定熱點模塊。如果產(chǎn)品已上線,可以統(tǒng)計和分析線上歷史數(shù)據(jù)。對于web類產(chǎn)品,我們可以獲取和分析獨立用戶數(shù)、頁面訪問量和最大在線用戶數(shù);對于后臺類產(chǎn)品,則可以分析如Nginx的Access log,從而得出最大的訪問量對于數(shù)據(jù)庫類產(chǎn)品,我們還可以分析出熱點SQL等。如果產(chǎn)品未上線有同類產(chǎn)品參考,可以參考公司內同類產(chǎn)品或者同行的同類產(chǎn)品進行熱點模塊預估,雖然不能完全照搬,但可以根據(jù)業(yè)務增長數(shù)據(jù)進行統(tǒng)計分析,輸出用戶訪問熱點軌跡圖。

二、選取性能測試點

選取性能測試點是性能測試需求分析中非常重要的一個環(huán)節(jié)。面對一個功能繁雜的系統(tǒng),要設計出有效的測試場景,最大程度上覆蓋系統(tǒng)的性能問題和瓶頸,需要較多的經(jīng)驗積累。目前我們可以按照以下原則來進行性能測試點的選取:

(1)核心業(yè)務模塊,例如支付業(yè)務、核心算法;

(2)并發(fā)量較高的業(yè)務模塊;

(3) 邏輯較復雜的業(yè)務模塊

(4) 有復雜數(shù)據(jù)庫操作或事務的模塊;

(5) 有較頻繁的磁盤讀寫操作的模塊

然后根據(jù)不同類型的系統(tǒng)應用,選取的原則也可以進一步細分。

對于Web應用,其性能測試點的選取原則為:

(1)依據(jù)業(yè)務數(shù)據(jù)統(tǒng)計中幾種典型業(yè)務的用戶使用數(shù)比例:

(2) 調用頻繁、占用空間大的數(shù)據(jù)庫表的交易,

(3) 占用最大存儲空間或其他資源的交易;

(4) 對磁盤、常駐內存的數(shù)據(jù)過度訪問的交易

對于后臺類應用,其性能測試點的選取原則為:

(1) 讀 (查詢)、寫 (增刪改) 、讀寫 (增刪改查) 合的業(yè)務模塊;

(2)配置服務器的業(yè)務模塊;

(3)功能的實現(xiàn)方式,如同步和異步,輪詢和notify等:

(4) 分布式業(yè)務模塊,如單客戶端和多客戶端,單節(jié)點和多節(jié)點;

(5) 數(shù)據(jù)規(guī)模,如數(shù)據(jù)庫已存在大量記錄,存儲可用空間少:

(6)緩存,如對文件系統(tǒng)緩存和數(shù)據(jù)庫緩存的利用等;

(7)負載均衡,如多節(jié)點情況下是否負載均衡。

對于分布式數(shù)據(jù)庫,其性能測試點的選取原則為:

(1) 數(shù)據(jù)庫讀寫混合業(yè)務模塊;

(2) 數(shù)據(jù)庫之間數(shù)據(jù)同步

(3) SQL語句;

(4) 數(shù)據(jù)規(guī)模4

比外,當系統(tǒng)應用包含長連接消息服務時,其性能測試點的選取原則為:

(1)單機能支撐的最大并發(fā)長連接數(shù);

(2)并發(fā)一定數(shù)量的用戶時的消息推送情況,包括消息到達時間、消息丟失率等

三、量化測試目標

梳理出來性能測試場景后,就需要進一步明確各個場景的測試指標,而大部分的產(chǎn)品經(jīng)理給出的指標是不完整的,通常情況下可以結合采集的數(shù)據(jù)和二八定律進行具體量化,讓性能測試指標更明確。

下面舉個例子來說明性能測試指標量化方法。

例如,某互聯(lián)應用,預計推廣群體達500萬人,用戶使用應用的時間是每天早上8點至晚上8點,共12h。

分析建模過程如下:

(1)注冊用戶轉化率預估為5%,那么注冊用戶數(shù)為5000000x5%=250000

(2)高峰時段 (比如有活動時) 每日在線用戶活躍率預估為10%,那么活躍用戶數(shù)為250000x 10%=25000

(3)用戶常用下單到成功觸發(fā)20個請求,總請求量為25000x20=500000

(4)利用二八定律計算,得出的吞吐量為500000x0.8/(12x3600x0.2)=46.7個每秒

若是更新需求,如發(fā)布新產(chǎn)品,定時搶購優(yōu)惠活動 (某日10點開始搶購,12點結束,共2h)。

重新建模如下:

(1)注冊用戶數(shù)為25萬不變

(2)高峰時段在線用戶在線率預估為20%,那么這2h的在線用戶數(shù)為250000x20%=50000

(3)用戶常用下單到成功觸發(fā)20個請求,總請求量為50000x20=1000000

(4)利用二八定律計算,得出的吞吐量為1000000x0.8/(2x3600x0.2)=555.6個每秒

由此可見,評估出來的TPS值和需求業(yè)務模型息息相關。

在性能測試的前期,通過上述“3步法”整理分析的詳盡程度將直接決定后續(xù)性能測試的有效性和準確性。

注意

在評定服務器的性能時,應該結合TPS和并發(fā)用戶數(shù),以TPS為主‘并發(fā)用戶數(shù)為輔來衡量系統(tǒng)的性能。如果必須要并發(fā)用戶數(shù)來衡量的話,則需要一個前提,那就是交易在多長時間內完成,因此只用并發(fā)用戶數(shù)來衡量系統(tǒng)的性能沒太大的意義。

提示

  • 響應時間:根據(jù)國外的資料,一般操作的響應時間為2秒、5秒和8秒,即2秒內為優(yōu)秀、5秒內為良好、8秒內為可接受;對于其它一些特殊的操作,如上傳、下載,可以依據(jù)用戶體驗的情況延長響應時間。
  • 二八定律:又稱帕累托效應,例如,一些系統(tǒng)一天中80%的訪問量集中在20%的時間內。


責任編輯:華軒 來源: 今日頭條
相關推薦

2013-03-21 11:20:00

性能測試性能調優(yōu)測試

2009-07-15 18:16:47

性能測試結果

2009-06-18 13:18:32

軟件測試需求分析

2023-09-13 14:45:14

性能測試開發(fā)

2019-06-18 10:24:23

開源技術 趨勢

2011-02-23 11:18:48

MongoDBMySQL性能測試

2011-06-20 17:33:14

需求分析

2023-02-15 18:22:11

測試測試左移開發(fā)

2015-09-14 10:41:51

PHP性能分析微觀分析

2010-02-07 13:55:12

萬兆交換機

2015-08-18 11:44:02

PHP性能分析宏觀分析

2020-10-20 14:05:48

用戶需求分析IT

2011-03-22 13:00:47

Nagios

2013-07-21 04:05:39

需求分析產(chǎn)品開發(fā)團隊

2013-12-25 10:32:41

MySQL性能測試

2013-05-08 09:31:32

MangoDB

2017-08-10 14:04:25

前端JavaScript函數(shù)性能

2009-12-30 11:03:26

ADO.Net性能

2022-10-18 11:47:08

數(shù)據(jù)分析運營直播

2011-12-20 09:23:09

點贊
收藏

51CTO技術棧公眾號