1.1.1 軟體效能的概念
軟體效能是與軟體功能相對應的一種非常重要的非功能特性,表明了軟體系統對時間及
時性及資源經濟性的要求。
1.1.2 不同角色對軟體效能的理解
(1)系統使用者:響應時間。使用者執行乙個功能操作後,到軟體把本次操作的結果完全展示給使用者所消耗的時間。
(2)系統運維人員:穩定,可擴充套件性。主要是效能調優。
(3)系統開發人員:架構,資料庫,執行緒同步。
1.1.3軟體效能的重要性
對於乙個軟體系統,執行時間執行速度越快、占用系統儲存資源及其他資源越少,則軟體效能越好。效能是軟體所需要的資源和完成工作的時間,在功能相同的情況下,效能是衡量事情完成效果的乙個重要因素。
->
應答。
三種情況:
閒時響應時間、忙時響應時間、峰時響應時間。
1.2.2 併發使用者數:系統能夠同時處理的使用者請求的數目。
平均併發使用者數:指系統正常訪問量下的併發使用者數。
最大併發使用者數:指在峰值訪問下的併發使用者數。(反應了系統的處理能力,往往作為一項重要的效能指標在需求分析時進行定義)。
1.2.3 吞吐量 :指單位時間內系統處理的客戶請求數量。以
byte
為單位。
rps :請求數
/秒。 每秒內能夠處理的最大請求數量。
pps :頁面數
/秒。 每秒內能夠顯示的頁面數量。
pv :頁面數
/天。 每天總的
page view
數量。
tps :事物
/秒。 每秒能夠處理的事物數量。
qps :查詢
/秒。 每秒能夠處理的查詢請求數量。
1.2.4 伺服器效能計數器。
一些資料指標,
在效能測試中發揮著監控和分析的關鍵作用。
以web
資訊系統為例,會影響整體訪問效能的因素有可能包括以下幾個方面: (1
)客戶端計算機硬體配置。
(2)客戶端併發執**況。
(3)瀏覽器軟體效能。
(4)伺服器端硬體配置。
(5)web伺服器軟體、應用伺服器軟體、資料庫伺服器軟體的效能。
(6)系統快取機制。
(7)系統程式效能。
(8)資料庫設計方案的合理性。
(9)資料庫訪問語句的效能。
(10)資料量的大小。
(11)客戶端網路頻寬。
(12)伺服器端網路頻寬。
(13)當前系統的併發使用者數。
效能需求分析:首先需要根據系統的業務特點制定明確的效能需求,為系統的設計和效能測試提供依據。
概要設計:針對系統效能要求,從資料結構、軟體架構、部署結構等方面進行系統的設計工作。
詳細設計:從單元粒度、演算法邏輯複雜度、變數定義等方面進行系統的設計工作。
效能測試:根據不同的階段,可以將效能測試分解為單元效能測試、整合效能測試和系統效能測試。
效能測試是驗證系統效能是否達到效能需求要求的測試活動,一般情況下效能測試專指在系統測試階段進行的效能測試。然而,系統效能問題都是在系統設計和開發的各個環節引入的,相同的缺陷在不同的階段發現,修復缺陷所需要付出的代價差異極大,而且有些缺陷只有在某些階段才容易發現,如果在系統測試階段由於效能未滿足要求再進行問題的定位,將非常困難。所以在單元測試和整合測試階段也需要針對性進行專門測試,以盡早的發現系統中有可能存在的效能瓶頸,盡早的進行效能優化,降低系統發生效能問題的可能性。
效能優化概述
效能優化的指標 併發量 秒殺 雙11 比如微博的幾次拓機 qps tqp 具體的實時方案 一 級別 效果很明顯,以自之力是可以完全實現 快取 本地快取 redis等。效果最明顯 提公升1000倍以上 批處理 比如myslq 批插入,redis 的hset等 提公升n倍 併發 多執行緒 執行緒池技術,...
效能測試 概述
什麼是效能測試 是不斷的通過不同場景的系統表現去 系統設計與資源消耗之間的平衡。我們可以認為效能測試是 通過在測試環境下對系統或構件的效能進行探測,用以驗證在生產環境下系統效能是否達到預估的效能需求,發現系統可能存在的效能瓶頸,進而改善優化並系統的效能,提高系統的可擴充套件性 穩定性。從上面的描述可...
軟體測試概述
軟體測試概述 為什麼要測試?最主要有兩個目的 一是對質量或可接受性做出評判。二是發現存在的問題。1 基本概念 測試有兩個明確的目標 找出失效 上述一 和 證實軟體執行的正確性 上述二 正確性是相對的,而不是絕對的 測試用例在測試中佔 核心地位。2 測試用例 軟體測試的精髓是為被測物件找到一組測試用例...