qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          性能測(cè)試之響應(yīng)時(shí)間

          網(wǎng)絡(luò)編輯

          簡(jiǎn)介

          網(wǎng)絡(luò)對(duì)整體響應(yīng)時(shí)間的影響是是通過(guò)不同機(jī)制完成的。所選擇的協(xié)議(例如幀中繼或ATM,EIGRP或OSPF)會(huì)很大程度地影響數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)难舆t時(shí)間。這些時(shí)間包括處理的時(shí)延(主機(jī)接收到數(shù)據(jù)包并獲得各種信息), 排隊(duì)時(shí)延(當(dāng)出現(xiàn)了其它的信息包時(shí)),傳送或連續(xù)傳輸時(shí)延(傳輸幀中的第一位和最后一位的時(shí)間), 傳輸時(shí)延(一個(gè)數(shù)據(jù)位通過(guò)鏈路的時(shí)間,他取決于物理的介質(zhì)和距離)。包的損壞和丟失也會(huì)降低信息的質(zhì)量或增加額外的時(shí)延,因?yàn)樾枰匦聜鬏敗5孛鎮(zhèn)鬏數(shù)钠髽I(yè)網(wǎng)絡(luò),等待和傳輸時(shí)延是網(wǎng)絡(luò)時(shí)延的主要問(wèn)題。對(duì)于衛(wèi)星網(wǎng)絡(luò),傳輸時(shí)延(加上訪問(wèn)協(xié)議)是主要問(wèn)題。服務(wù)器時(shí)延的影響有服務(wù)器本身和應(yīng)用設(shè)計(jì)兩個(gè)方面。服務(wù)器本身的性能包括處理器的速度,存儲(chǔ)器和I/O性能,硬盤(pán)驅(qū)動(dòng)速度以及其它設(shè)置。應(yīng)用設(shè)計(jì)包括結(jié)構(gòu)和算法。

          結(jié)構(gòu)

          應(yīng)用時(shí)延受幾個(gè)獨(dú)立的因素影響,例如應(yīng)用設(shè)計(jì)(例如通話的穩(wěn)定性),交易的大小,選擇的協(xié)議(例如UDP或TCP),以及網(wǎng)絡(luò)的結(jié)構(gòu)。完成一個(gè)確定的交易時(shí),一個(gè)應(yīng)用所需要的往返次數(shù)越少,它受到網(wǎng)絡(luò)結(jié)構(gòu)的影響也越小。然而,由于需要重新傳輸,所以往返的次數(shù)本身可能取決于網(wǎng)絡(luò)結(jié)構(gòu)。

          用戶的經(jīng)驗(yàn)

          計(jì)算機(jī)的用戶最討厭等待。在大量的處理環(huán)境中,超過(guò)3秒以上的響應(yīng)時(shí)間將會(huì)嚴(yán)重影響工作效率。然而最終用戶的感受不僅僅是絕對(duì)時(shí)間問(wèn)題,他們對(duì)于響應(yīng)時(shí)間的期望是參照以往的經(jīng)驗(yàn),而這種期望是相對(duì)于他們使用該應(yīng)用的基準(zhǔn)性能。如果使用該應(yīng)用的當(dāng)前感受和以往的經(jīng)驗(yàn)有很大的差別時(shí),抱怨以及需要支持的電話就會(huì)成倍地增加。

          重要性

          應(yīng)用響應(yīng)時(shí)間的問(wèn)題隨著基于服務(wù)器應(yīng)用的大量增加而迅速增多。確定造成應(yīng)用延遲的原因成為很困難的任務(wù)。財(cái)富500強(qiáng)中一個(gè)財(cái)務(wù)公司的網(wǎng)絡(luò)管理經(jīng)理說(shuō)他們花了太多的時(shí)間用來(lái)查找問(wèn)題,該經(jīng)理補(bǔ)充說(shuō):“甚至技術(shù)人員已經(jīng)把故障確定為網(wǎng)絡(luò)中問(wèn)題的情況下,也只有50%的情況真是網(wǎng)絡(luò)的問(wèn)題。有時(shí)我們不得不將所有人都派出去而只是為了找到問(wèn)題在哪里”。

          維護(hù)和管理

          企業(yè)要求其網(wǎng)絡(luò),應(yīng)用以及MIS的經(jīng)理要保證那些與業(yè)務(wù)相關(guān)的關(guān)鍵應(yīng)用必須在網(wǎng)絡(luò)上平穩(wěn)運(yùn)行。確定影響應(yīng)用性能的問(wèn)題在哪里以及誰(shuí)負(fù)責(zé)解決該問(wèn)題是IT部門(mén)面臨的十分費(fèi)時(shí)且具有挑戰(zhàn)性的工作。由于缺少有經(jīng)驗(yàn)的人員和人力資源的限制,所有企業(yè)都希望以省時(shí)省力的方法來(lái)維護(hù)和管理響應(yīng)時(shí)間。[1-2]

          2操作系統(tǒng)編輯

          操作系統(tǒng)的反映時(shí)間
          在操作系統(tǒng)中,響應(yīng)時(shí)間指用戶發(fā)出請(qǐng)求或者指令到系統(tǒng)做出反應(yīng)(響應(yīng))的時(shí)間。
          系統(tǒng)響應(yīng)時(shí)間包括兩個(gè)方面:
          時(shí)間長(zhǎng)度和時(shí)間的易變性。用戶響應(yīng)時(shí)間應(yīng)該適中,系統(tǒng)響應(yīng)時(shí)間過(guò)長(zhǎng),用戶就會(huì)感到不安和沮喪,而響應(yīng)時(shí)間過(guò)短有時(shí)會(huì)造成用戶加快操作節(jié)奏,從而導(dǎo)致錯(cuò)誤。系統(tǒng)響應(yīng)時(shí)間的易變性是指相對(duì)于平均響應(yīng)時(shí)間的偏差。即使響應(yīng)時(shí)間比較長(zhǎng),低的響應(yīng)時(shí)間易變性也有助于用戶建立穩(wěn)定的節(jié)奏。因此在系統(tǒng)響應(yīng)時(shí)間上堅(jiān)持如下原則:
          響應(yīng)時(shí)間長(zhǎng)度 界面設(shè)計(jì)
          0-10 秒 鼠 標(biāo) 顯 示 成 為 沙 漏
          10 到18 秒 由微幫助來(lái)顯示處理進(jìn)度
          18 秒 以 上 顯示處理窗口,或顯示進(jìn)度條

          一個(gè)長(zhǎng)時(shí)間的處理完成時(shí) 應(yīng)給予完成警告信息 

           從用戶角度來(lái)說(shuō),軟件性能就是軟件對(duì)用戶操作的響應(yīng)時(shí)間。說(shuō)得更明確一點(diǎn),對(duì)用戶來(lái)說(shuō),當(dāng)用戶單擊一個(gè)按鈕,發(fā)出一條指令或在web頁(yè)面上單擊一個(gè)鏈接,從用戶單擊開(kāi)始到應(yīng)用系統(tǒng)把本次操作的結(jié)果以用戶能察覺(jué)的方式展示出來(lái),這個(gè)過(guò)程所消耗的時(shí)間就是用戶對(duì)軟件性能的直觀印象。

           

           

          響應(yīng)時(shí)間過(guò)程分析

            我們需要對(duì)這個(gè)過(guò)程進(jìn)行分解,才能得到你真正想要的響應(yīng)時(shí)間。我把整個(gè)過(guò)程分三個(gè)部分,呈現(xiàn)時(shí)間,數(shù)據(jù)傳輸時(shí)間和系統(tǒng)處理時(shí)間

          呈現(xiàn)時(shí)間

            其實(shí)主要說(shuō)的瀏覽器對(duì)接收到數(shù)據(jù)的一個(gè)處理展示的過(guò)程。幾年前大家都在用IE,如果頁(yè)面顯示比較慢,我們肯定不會(huì)怪罪IE,只會(huì)怪罪電信運(yùn)營(yíng)商的網(wǎng)速或被訪問(wèn)的系統(tǒng)(其實(shí),大多情況我們不會(huì)考慮是被訪問(wèn)系統(tǒng)的問(wèn)題)。現(xiàn)在chrome來(lái)了,我們會(huì)發(fā)現(xiàn)同一臺(tái)電腦同一個(gè)網(wǎng)站,通過(guò)chrome去訪問(wèn),頁(yè)面的呈現(xiàn)速度會(huì)比IE略快。這是各種評(píng)測(cè)及大眾用戶的整體感受。當(dāng)然,我個(gè)人感覺(jué),opera瀏覽器的呈現(xiàn)速度最快,但它的顯示效果一直不太好。

            當(dāng)然,我說(shuō)這個(gè)呈現(xiàn)時(shí)間總不能全怪罪與瀏覽器的身上吧!當(dāng)然還和承載它的操作系統(tǒng)有關(guān),以及電腦硬件(比如cpu 內(nèi)存)。假如你有超快的瀏覽器,如果是一臺(tái)極其垃圾的電腦,我想你多打開(kāi)兩個(gè)網(wǎng)頁(yè)就有可能使電腦卡掉。

          數(shù)據(jù)傳輸時(shí)間

            千萬(wàn)不要忽視數(shù)據(jù)傳輸時(shí)間。如果你要寄信給你一個(gè)遠(yuǎn)方的朋友,你想是什么影響你將信息傳遞給遠(yuǎn)方的朋友?不是你寫(xiě)信的過(guò)程(如果你寫(xiě)的信不像書(shū)一樣厚的話),也不是你朋友讀信的過(guò)程,而是送信的過(guò)程。(ps, 10天前在china-pub訂購(gòu)的一本書(shū)現(xiàn)在還沒(méi)到貨!XXX

            拿我們系統(tǒng)的數(shù)據(jù)傳輸過(guò)程來(lái)說(shuō),我們發(fā)送一個(gè)請(qǐng)求需要時(shí)間,系統(tǒng)處理完后返回給我們也需要時(shí)間。初學(xué)性能測(cè)試工具的同學(xué)喜歡拿工具去測(cè)試互聯(lián)網(wǎng)上的一些系統(tǒng),甚至不懂性能的同學(xué)認(rèn)為可以用性能測(cè)試工具將互聯(lián)網(wǎng)上的一些網(wǎng)站壓崩潰。貌似這一招比任何黑客攻擊厲害多去。

            那么,我覺(jué)得這些同學(xué)應(yīng)該補(bǔ)補(bǔ)網(wǎng)絡(luò)知識(shí)了,你的帶寬是多少?互聯(lián)網(wǎng)是個(gè)網(wǎng),就是算是相同的起點(diǎn)與終點(diǎn),它有可能走的不同的路線。有沒(méi)有考慮網(wǎng)絡(luò)延遲?就算你的并發(fā)請(qǐng)求都能成功的發(fā)出,但到目的地的時(shí)候,已經(jīng)不能叫并發(fā)了。

            這也是為什么我們?cè)谝话阕鲂阅軠y(cè)試時(shí),一般要強(qiáng)調(diào)要在局域網(wǎng)中進(jìn)行。當(dāng)然,也有特殊的性能測(cè)試需要在互聯(lián)網(wǎng)中時(shí)行。它們重點(diǎn)不是求用戶的最大的并發(fā)量。

          系統(tǒng)處理時(shí)間

          系統(tǒng)得到請(qǐng)求后對(duì)請(qǐng)求進(jìn)行處理并將結(jié)果返回。那我進(jìn)行性能測(cè)試主要就是驗(yàn)證系統(tǒng)的處理時(shí)間,因?yàn)榍懊娴某尸F(xiàn)時(shí)間和數(shù)據(jù)傳輸時(shí)間都我們不可控制的,用戶使用的電腦及瀏覽器千差萬(wàn)別,用戶的網(wǎng)絡(luò)狀況千差萬(wàn)別。我們唯一能控制的就是將系統(tǒng)的處理請(qǐng)求的時(shí)間縮到最短暫。

          如果我們對(duì)系統(tǒng)的的處理進(jìn)行分析和講解的話,它會(huì)是一個(gè)非常龐大與復(fù)雜的過(guò)程。語(yǔ)言、語(yǔ)言框架、中間件,數(shù)據(jù)庫(kù)、系統(tǒng)架構(gòu)以及服務(wù)器系統(tǒng)。所以,想成為一個(gè)優(yōu)秀的性能測(cè)試工程師我們的路還很長(zhǎng)。

           

          實(shí)際性的能測(cè)試

                聽(tīng)了上面的分析,貌似每個(gè)過(guò)程都挺“浪費(fèi)”時(shí)間,那么我們?nèi)绾沃粶y(cè)試系統(tǒng)的處理時(shí)間呢?

            其實(shí)現(xiàn)在的測(cè)試工具都屏蔽呈現(xiàn)過(guò)程,只是模擬多用戶并發(fā)請(qǐng)求,計(jì)算用戶得到響應(yīng)的時(shí)間,頁(yè)不會(huì)將服務(wù)器的每個(gè)響應(yīng)都向客戶端呈現(xiàn)。

            對(duì)于數(shù)據(jù)傳輸?shù)膯?wèn)題,這也是我要強(qiáng)調(diào)的性能測(cè)試要在局域網(wǎng)中進(jìn)行,在局域網(wǎng)中一般不會(huì)受到數(shù)據(jù)帶寬的限制。所以,可以對(duì)數(shù)據(jù)的傳輸時(shí)間忽略不計(jì)。

           

           響應(yīng)時(shí)間的定義:

          響應(yīng)時(shí)間

            指的是客戶發(fā)出請(qǐng)求到得到響應(yīng)的整個(gè)過(guò)程的時(shí)間。在某些工具中,請(qǐng)求響應(yīng)時(shí)間通常會(huì)被稱為“TTLB(Time to laster byte) ,意思是從發(fā)起一個(gè)請(qǐng)求開(kāi)始,到客戶端收到最后一個(gè)字節(jié)的響應(yīng)所耗費(fèi)的時(shí)間。

          系統(tǒng)響應(yīng)時(shí)間

            應(yīng)用系統(tǒng)從發(fā)出請(qǐng)求開(kāi)始到客戶端接收到響應(yīng)所消耗的時(shí)間。需要注明的是,這樣的定義完全是個(gè)人喜好。你可以提異議。

           

          我們來(lái)看兩種情況

            我要訪問(wèn)百度首頁(yè),發(fā)出了一個(gè)請(qǐng)求,百度開(kāi)始給我返回頁(yè)面數(shù)據(jù),當(dāng)搜索框與搜索按鈕都已經(jīng)返回到頁(yè)面上了,但那個(gè)圖標(biāo)還在發(fā)送中。我不認(rèn)為這個(gè)響應(yīng)是完整的。必須把頁(yè)面上的所有信息都返回給我才是完整的,我要的也是所有結(jié)果返回給我的時(shí)間。這種情況更符合“相應(yīng)時(shí)間”的定義

               某系統(tǒng)有一個(gè)信息查詢功能,當(dāng)我輸入某條件查詢時(shí),可能要查詢幾百萬(wàn)條數(shù)據(jù),如果數(shù)據(jù)庫(kù),要查詢所有的數(shù)據(jù)并把所有的數(shù)據(jù)全部完整的返回給我。可能服務(wù)器要查詢很久,而我的電腦全部接收這些數(shù)據(jù)也可能只直接掛掉。那么服務(wù)器可能只查詢100條數(shù)據(jù)并把數(shù)據(jù)返回給我,當(dāng)我點(diǎn)擊“下一頁(yè)”時(shí),服務(wù)器再次查詢并將第二頁(yè)的數(shù)據(jù)返回給我。這種情況更符合“系統(tǒng)響應(yīng)時(shí)間”的定義。

            關(guān)于響應(yīng)時(shí)間,要特別說(shuō)明的一點(diǎn)是,對(duì)客戶來(lái)說(shuō),該值是否能夠被接受是帶有一定的用戶主觀色彩,也就是說(shuō),響應(yīng)時(shí)間的“長(zhǎng)”和“短”沒(méi)有絕對(duì)的區(qū)別。

           

          合理的響應(yīng)時(shí)間

            在互聯(lián)網(wǎng)上對(duì)于用戶響應(yīng)時(shí)間,有一個(gè)普遍的標(biāo)準(zhǔn)。2/5/10秒原則。

            也就是說(shuō),在2秒之內(nèi)給客戶響應(yīng)被用戶認(rèn)為是“非常有吸引力”的用戶體驗(yàn)。在5秒之內(nèi)響應(yīng)客戶被認(rèn)為“比較不錯(cuò)”的用戶體驗(yàn),在10秒內(nèi)給用戶響應(yīng)被認(rèn)為“糟糕”的用戶體驗(yàn)。如果超過(guò)10秒還沒(méi)有得到響應(yīng),那么大多用戶會(huì)認(rèn)為這次請(qǐng)求是失敗的。

            這里我們還要考慮一個(gè)使用頻率的概念。

            我最早安裝windows系統(tǒng)可能要1個(gè)小時(shí),我們?yōu)槭裁从X(jué)得這很正常,因?yàn)槲覀円芫貌叛b一次系統(tǒng),如果系統(tǒng)使用得當(dāng),可能一個(gè)系統(tǒng)用幾年不用重裝,假如,我們?cè)谙到y(tǒng)上裝個(gè)任何小軟件都要這么長(zhǎng)時(shí)間,那我們一定是無(wú)法忍受的。對(duì)于軟件控來(lái)說(shuō),他們會(huì)時(shí)常安裝各種新鮮有趣的軟件進(jìn)行使用。

          對(duì)于一個(gè)稅務(wù)報(bào)賬系統(tǒng),該系統(tǒng)的用戶每月使用一次,一次花費(fèi)3小時(shí)進(jìn)行數(shù)據(jù)的錄入,

          當(dāng)用戶單擊“提交”按鈕后,即使系統(tǒng)在10分鐘后才給出“處理成功”的消息,我們也覺(jué)得是可以接受的。

              因此,在進(jìn)行性能測(cè)試時(shí),“合理的響應(yīng)時(shí)間”取決于用戶的需求,而不能依據(jù)測(cè)試人員自己設(shè)想來(lái)決定。

          posted on 2014-02-07 11:22 順其自然EVO 閱讀(1332) 評(píng)論(0)  編輯  收藏 所屬分類: 性能測(cè)試

          <2025年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 三门县| 景泰县| 广安市| 涟水县| 昭平县| 南开区| 安溪县| 逊克县| 虹口区| 饶河县| 青浦区| 宜宾县| 五家渠市| 宁津县| 靖江市| 巴青县| 漳州市| 阳东县| 哈密市| 昔阳县| 永新县| 汝城县| 阿城市| 梅河口市| 滁州市| 临西县| 阿鲁科尔沁旗| 庆城县| 凤庆县| 栾城县| 嵊泗县| 搜索| 甘洛县| 宜昌市| 吴桥县| 府谷县| 桃江县| 富平县| 织金县| 天气| 和平县|