<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 61,  comments - 2033,  trackbacks - 0
    負載測試(Load testing)、壓力測試(Stress Test,應稱為強度測試)和性能測試,這三個概念常常引起混淆,難以區分,從而造成不正確的理解和錯誤的使用。之前,也有不少討論,比較有名的,應歸為Grig Gheorghiu's的兩篇博客: Performance vs. load vs. stress testing More on performance vs. load testing負載測試、壓力測試和性能測試的測試目的不同,但其手段和方法在一定程度上比較相似,通常會使用相同的測試環境和測試工具,而且都會監控系統所占用資源的情況以及其它相應的性能指標,這也是造成人們容易產生概念混淆的主要原因。 我們知道,軟件總是運行在一定的環境下,這種環境包括支撐軟件運行的軟硬件環境和影響軟件運行的外部條件。為了讓客戶使用軟件系統感到滿意,必須確保系統運行良好,達到高安全、高可靠和高性能。其中,系統是否具有高性能的運行特征,不僅取決于系統本身的設計和程序算法,而且取決于系統的運行環境。系統的運行環境會依賴于一些關鍵因素,例如: 系統架構,如分布式服務器集群還是集中式主機系統等。 硬件配置,如服務器的配置,CPU、內存等配置越高,系統的性能會越好。 網絡帶寬,隨著帶寬的提高,客戶端訪問服務器的速度會有較大的改善。 支撐軟件的選定,如選定不同的數據庫管理系統(Oracle、MySQL等)和web應用服務器(Tomcat、GlassFish、Jboss、WebLogic等),對應用系統的性能都有影響。 外部負載,同時有多少個用戶連接、用戶上載文件大小、數據庫中的記錄數等都會對系統的性能有影響。一般來說,系統負載越大,系統的性能會降低。 從上面可以看出,使系統的性能達到一個最好的狀態,不僅通過對處在特定環境下的系統進行測試以完成相關的驗證,而且往往要根據測試的結果,對系統的設計、代碼和配置等進行調整,提高系統的性能。許多時候,系統性能的改善是測試、調整、再測試、再調整、……一個持續改進的過程,這就是我們經常說的性能調優(perormance tuning)。 在了解了這樣一個背景之后,就比較容易理解為什么在性能測試中常常要談負載測試。從測試的目的出發、從用戶的需求出發,就比較容易區分性能測試、負載測試和壓力測試。性能測試是為了獲得系統在某種特定的條件下(包括特定的負載條件下)的性能指標數據,而負載測試、壓力測試是為了發現軟件系統中所存在的問題,包括性能瓶頸、內存泄漏等。通過負載測試,也是為了獲得系統正常工作時所能承受的最大負載,這時負載測試就成為容量測試。通過壓力測試,可以知道在什么極限情況下系統會崩潰、系統是否具有自我恢復性等,但更多的是為了確定系統的穩定性。 那么,如何給負載測試、壓力測試下個定義呢?根據上述討論,我們可以給出如下的定義: 負載測試是模擬實際軟件系統所承受的負載條件的系統負荷,通過不斷加載(如逐漸增加模擬用戶的數量)或其它加載方式來觀察不同負載下系統的響應時間和數據吞吐量、系統占用的資源(如CPU、內存)等,以檢驗系統的行為和特性,以發現系統可能存在的性能瓶頸、內存泄漏、不能實時同步等問題。負載測試更多地體現了一種方法或一種技術。 壓力測試是在強負載(大數據量、大量并發用戶等)下的測試,查看應用系統在峰值使用情況下操作行為,從而有效地發現系統的某項功能隱患、系統是否具有良好的容錯能力和可恢復能力。壓力測試分為高負載下的長時間(如24小時以上)的穩定性壓力測試和極限負載情況下導致系統崩潰的破壞性壓力測試。 壓力測試可以被看作是負載測試的一種,即高負載下的負載測試,或者說壓力測試采用負載測試技術。通過壓力測試,可以更快地發現內存泄漏問題,還可以更快地發現影響系統穩定性的問題。例如,在正常負載情況下,某些功能不能正常使用或系統出錯的概率比較低,可能一個月只出現一次,但在高負載(壓力測試)下,可能一天就出現,從而發現有缺陷的功能或其它系統問題。通過負載測試,可以證明這一點,某個電子商務網站的訂單提交功能,在10個并發用戶時錯誤率是零,在50個并發用戶時錯誤率是1%,而在200個并發用戶時錯誤率是20%。 負載測試是為了發現系統的性能問題,負載測試需要通過系統性能特性或行為來發現問題,從而為性能改進提供幫助,從這個意義看,負載測試可以看作性能測試的一部分。但它們兩者的目的是不一樣的,負載測試是為了發現缺陷,而性能測試是為了獲取性能指標。因為性能測試過程中,也可以不調整負載,而是在同樣負載情況下改變系統的結構、改變算法、改變硬件配置等等來得到性能指標數據,從這個意義看,負載測試可以看作是性能測試所c的一種技術,即性能測試使用負載測試的技術、使用負載測試的工具。性能測試要獲得在不同的負載情況下的性能指標數據。 通過負載測試和壓力測試都可以獲得系統正常工作時的極限負載或最大容量。容量測試,自然也是采用負載測試技術來實現,而在破壞性的壓力測試中,容量的確定可以看作是一種副產品——間接結果。 綜合所述,負載測試、壓力測試和性能測試的概念可以概括如下: 負載測試是通過改變系統負載方式、增加負載等來發現系統中所存在的性能問題。負載測試是一種測試方法,可以為性能測試、壓力測試所采用。負載測試的加載方式也有很多種,可以根據測試需要來選擇。 性能測試是為獲取或驗證系統性能指標而進行測試。多數情況下,性能測試會在不同負載情況下進行。 壓力測試通常是在高負載情況下來對系統的穩定性進行測試,更有效地發現系統穩定性的隱患和系統在負載峰值的條件下功能隱患等。
    posted on 2009-08-26 20:06 魚上游 閱讀(1561) 評論(0)  編輯  收藏 所屬分類: 爪哇友鄰真不少
    <2009年8月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    常用鏈接

    留言簿(82)

    隨筆分類(59)

    文章分類(21)

    相冊

    收藏夾(40)

    GoodSites

    搜索

    •  

    積分與排名

    • 積分 - 1267178
    • 排名 - 22

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 亚洲第一综合天堂另类专| 男人j进女人p免费视频| 91亚洲性爱在线视频| 亚洲精品乱码久久久久久蜜桃图片| 亚洲成年人免费网站| 亚洲国产专区一区| 亚洲码一区二区三区| 国产vA免费精品高清在线观看| 精品熟女少妇AV免费观看| 国产亚洲人成网站观看| 在线观看亚洲网站| 免费观看美女用震蛋喷水的视频| 国产精品亚洲玖玖玖在线观看 | 午夜视频免费成人| 亚洲精品无码久久久久| 久久精品视频免费看| 亚洲av无码天堂一区二区三区| 亚洲福利一区二区精品秒拍| 成人毛片免费观看视频| 亚洲精品乱码久久久久久下载| 免费成人激情视频| 久久精品国产亚洲AV| 成人a免费α片在线视频网站 | 亚洲AV无码一区二区三区人| 日本道免费精品一区二区| 精品亚洲成α人无码成α在线观看 | free哆拍拍免费永久视频| 日本亚洲视频在线| 国产伦精品一区二区免费| 免费国产真实迷j在线观看| 亚洲中文字幕乱码AV波多JI| 国产免费不卡视频| 亚洲国产高清视频在线观看| 97精品免费视频| 亚洲日韩国产精品无码av| 免费毛片在线播放| 国产AV日韩A∨亚洲AV电影| 亚洲午夜福利717| 国色精品va在线观看免费视频| 亚洲成人免费网址| 亚洲一区二区三区免费|