億級電商流量示例圖:
方法1:Web服務器SPECweb2005估算法
適用範圍:適用於爲支持滿足特定吞吐量和客戶請求響應速率要求的WEB服務器的性能進行估算。
原理介紹:Web服務器通常需要衡量它可以支持滿足特定吞吐量和客戶請求響應速率要求的WEB服務器的最大併發連接數量,而SPECweb2005是由標準性能評估組織(SPEC)專門開發的的Web服務器基準測試。服務器廠商通常會提供每種型號服務器的SPECweb2005值。使用本方法估算不考慮網絡因素,假設客戶端和服務器位於同一局域網中,網絡傳輸時間可以忽略。
計算公式:SPEC Web2005值= (總用戶數 * 在線率 * 在線用戶平均發起http請求數)/ (1 — 冗餘率)
參數解釋:
總用戶數:應用系統總的用戶數。
在線率:應用系統使用高峯時用戶的在線率。
在線用戶平均發起http請求數:平均每個在線用戶發起的http請求數量。 冗餘率:需要預留的冗餘率。
計算步驟:
步驟一:估算系統總的用戶數。
步驟二:估算應用系統使用高峯時用戶的在線率。
步驟三:估算平均每個用戶發起的http請求數量。
步驟四:設置預留的冗餘率。
步驟五:將步驟一、二、三、四的估算值代入公式,計算出SPECweb2005值。
步驟六:根據計算出SPECweb2005值,選擇等於或者大於SPECweb2005值的目標服務器。
方法2:數據庫服務器內存估算法
適用範圍:適用於估算數據庫服務器(應用服務器、Web服務器可參考)所需的內存。
原理介紹:數據庫服務器相對其他服務器來說,因爲涉及大量的數據處理,需要把數據載入內存,以加快處理速度,所以需要更多的內存。對於內存的估算一般有下述兩種方法,建議採用下述兩種方法分別估算出所需的內存,取其中最大的數值。
計算方法:
方法一:
根據標準化設計,將數據庫內存容量(單位爲G)和CPU的核心的數量的比例按照4:1配置,一個CPU的核心對應4G內存。例如服務器配置兩個4核CPU則建議配置32G內存。
方法二:
原理介紹:數據庫服務器的內存主要包括:操作系統佔用內存、數據庫系統佔用內存、數據庫併發網絡連接佔用內存等。按照經驗,Windows平臺內存佔用率不超過55%、Unix(或Linux)平臺內存佔用率不超過80%時,不會影響系統的性能。
計算公式:
1.數據庫服務器(Windows平臺)內存 = (操作系統佔用內存+數據庫佔用內存+數據庫併發網絡連接佔用內存+其他軟件佔用內存)/ 55%
2.數據庫服務器(Unix或Linux平臺)內存 = (操作系統佔用內存+數據庫佔用內存+數據庫併發網絡連接佔用內存+其他軟件佔用內存)/ 60%(前置條件:操作系統佔用內存+數據庫佔用內存+數據庫併發網絡連接佔用內存+其他軟件佔用內存≤4G)
參數解釋:
操作系統佔用內存:操作系統運行需要佔用的內存。
數據庫佔用內存:數據庫服務器運行需要佔用的內存。
數據庫併發網絡連接佔用內存:數據庫客戶端和數據庫服務器之間連接時,數據庫服務器需要花費的內存。
其他軟件佔用內存:數據庫服務器中其他軟件運行需要佔用的內存。
計算步驟:
步驟一:估算操作系統所佔用內存
操作系統所佔用內存具體和操作系統類型和版本相關,一般爲600M內存。
步驟二:估算數據庫系統佔用內存
數據庫系統佔用內存主要包括:數據庫服務器軟件佔用的內存和數據庫緩存。其中數據庫緩存和數據庫大小相關,根據經驗,數據庫服務器在緩存容量達到數據庫經常訪問數據總量(注:數據庫總量不包括系統數據)的5%時性能較好。因此,數據庫系統緩存=數據庫經常訪問數據總量*5%。
數據庫服務器軟件佔用內存和所用的數據庫管理軟件及版本相關,按照經驗,一般爲200M內存。
步驟三:估算數據庫併發網絡連接佔用內存
數據庫併發網絡連接數每個佔用5M。假設有200個連接,即併發連接佔用內存爲200 * 5M = 1000M。
步驟四:估算其他軟件佔用內存
先估算需要安裝的軟件,再估算每種軟件佔用內存的總和。爲了簡化計算,可以先估計每種軟件佔用內存大小Mi,再估計安裝的軟件數Ni,即其他軟件佔用內存
步驟五:估算所需內存
根據上述公式,估算所需內存。
存儲資源估算實例
申請存儲資源時應根據下述方法估算所需存儲資源的需求,存儲需求主要包括數據庫存儲需求、普通文件存儲需求和系統運行存儲需求三類。
1)數據庫存儲
情景假設:
a. 某個應用系統,主要包括客戶、產品、訂購關係等三個實體表,建立了3個索引;
b. 預計一年內客戶數爲10000個,每個客戶數據3MB;
c. 產品數爲200個,每個產品數據5MB;
d. 訂購關係數爲50000個,每個數據1MB;
e. 三種索引,每個索引的大小爲1MB;
f. 假設考慮30%的容量冗餘比率;
g. 磁盤採用Raid10冗餘。
計算步驟:
a. 分別估算每個實體表的數量和大小
客戶數據大小: 10000 * 3MB
產品數據大小: 200 * 5MB
訂購關係數據大小: 50000 * 1MB
索引數據大小: 10000 * 1MB + 200 * 1MB + 50000 * 1MB
b. 初步容量需求彙總
初步容量需求彙總= 10000 * (3MB + 1MB) + 200 * (5MB + 1MB) + 50000 * (1MB + 1MB) = 40000MB + 1200MB + 100000MB = 141,200MB
c. 考慮容量冗餘的容量需求
考慮容量冗餘的容量需求= 141,200MB ÷ (1-30%) = 141,200MB ÷0.7 = 201,714MB
d. 考慮磁盤raid冗餘的容量需求
考慮磁盤raid冗餘的容量需求=201,714MB * 200% = 403,428MB
2)普通文件存儲
情景假設:
a. 某個應用系統存在三種容量較大的文件:日誌文件、交易數據記錄、收費文件;
b. 預計一定時期內,日誌文件的大小可能達到3G, 交易數據記錄文件的大小可能達到2.5G,收費文件的大小可能達到2G;
c. 假設考慮30%的容量冗餘比率;
d. 磁盤採用Raid10冗餘。
計算步驟:
a. 初步容量需求彙總
初步容量需求彙總= 3G + 2.5G + 2G = 7.5G
e. 考慮容量冗餘的容量需求
考慮容量冗餘的容量需求 = 7.5G ÷ (1- 30%) = 10.7G
b. 考慮磁盤raid冗餘的容量需求
考慮磁盤raid冗餘的容量需求= 10.7G * 200% = 21.4G
3)系統運行存儲
情景假設:
a. 服務器上安裝windows 2003server操作系統、WebLogic8.0中間件和防病毒軟件。
b. 假設考慮30%的容量冗餘比率;
c. 磁盤採用Raid10冗餘。
估算步驟:
d. 估算操作系統需要的存儲容量大小
Windows 2003 server操作系統需佔用4.5G空間。
e. 估算應用軟件需要的存儲容量大小
WebLogic 8.0軟件需佔用1.5G空間。
f. 估算其他軟件需要的存儲容量大小
安裝一套防病毒軟件需佔用1G空間。
g. 初步容量需求彙總
初步容量需求彙總 = 4.5G + 1.5G + 1G = 7G
h. 考慮容量冗餘的容量需求:
考慮容量冗餘的容量需求= 7G÷ (1 –30%) = 10G
i. 考慮磁盤raid冗餘的容量需求: