戀戀冬季

          有你的冬天很溫暖

          性能測試的有關定義

          性能 perfotmance —— 應用程序的性能是進行典型操作所需的時間。性能常常用 響應時間 的標準來衡量。性能經常是重要的業務需求之一。
          ?

          響應時間 response time —— 是應用程序處理一個請求所需的時間 比如:從用戶的瀏覽器得到的一個 HTTP 請求 一般我們對平均響應時間感興趣,在負載增大時響應時間的一貫性也很重要。提高負載后若響應時間曲線出現鋸齒,往往說明性能乏善可陳,還有潛在的不穩定。
          ?

          延遲時間 latency ——是從應用程序得到反饋所需的最少時間(不管程序是否需要做多工作才能得到這個反饋,遠程方法調用具有很長的延遲;不管被調用的方法是否成功,都有一個固定的最小開銷)。
          ?

          吞吐量( throughput )——是程序或者組件在一段給定時間內所能進行工作的總和(對 web 應用來說,常常用每秒點擊率來衡量;對事務處理應用來說,則是每秒能完成的事務數)。
          ?

          可伸縮性( scalability )——指應用程序如何應對增長的流量。說到可伸縮性的時候,我們通常指向上可伸縮( scaling up ),以便應對更大的負載。可伸縮性經常等價于水平可伸縮性( horizontal scalability ):向上伸縮到服務器集群來提高吞吐量。 我們也可以通過把應用轉移到更強的服務器上來提高吞吐量。后者要簡單得多,但顯然并不能讓應用更牢固,也只能得到有限的提高。
          另一種選擇是垂直伸縮(
          vertical scaling ):在每臺服務器上運行多份服務。“垂直伸縮”這個術語被 Fowler 用來指“為單臺服務器增加更多的計算能力”,比如添加額外的 CPU 或者內存。
          性能和可伸縮性有時候在現實中是對立的。能在單臺服務器上高性能運行的應用,卻可能無法被部署到集群中, 比如:為了獲得高性能,針對每個用戶在 session 中維護大量的數據;而在集群環境下,這些數據無法被高效地復制。然而,必須意識到,性能地下的應用同樣不會具有很好的可伸縮性。如果應用程序在單臺服務器上浪費資源,就以為著即便在集群中運行,也只不過是浪費更多的資源。
          ?

          性能測試簡單說,就是在預期的壓力下,我的應用能跑多快。注意,這里的壓力是你預期的,更多的時候就是你的性能指標。

          負載測試( load test )——目標是給系統以期望的負載量[ 在沒有速度要求的情況下,我的應用能支撐多少的并發用戶,這里更多的是考慮容量。 ]

          壓力測試( stress test )——目標是在超過期望能力時確定系統行為[ 超過容量壓力下的表現,也關注應用的恢復能力,這里更多的是關注系統的變化,屬于健壯性測試(robustness?)一類 ]

          穩定性測試 stability?test )—— 測試系統長時間運行的表現,更多的是發現一些資源泄漏等問題,一般壓力隨便設置。

          基準測試對比性測試 benchmark ——一般用來廠商之間同類產品之間,相同產品版本之間的對比。


          posted on 2006-04-13 11:10 戀戀冬季 閱讀(347) 評論(0)  編輯  收藏 所屬分類: 測試資料

          主站蜘蛛池模板: 武鸣县| 福安市| 彝良县| 金乡县| 镇远县| 固始县| 固安县| 建昌县| 夏邑县| 吉林省| 岱山县| 华池县| 县级市| 蓝田县| 通海县| 石首市| 平陆县| 六安市| 泊头市| 丰都县| 信宜市| 长泰县| 安岳县| 扶沟县| 香格里拉县| 西贡区| 博爱县| 阿尔山市| 宁夏| 福州市| 施甸县| 高陵县| 昌江| 左权县| 通道| 新宾| 麻栗坡县| 宣汉县| 襄樊市| 柳河县| 岐山县|