伺服器處理能力,你估算正確過嗎?
但凡寫過技術方案的都知道,在技術方案最終落實到工程實施部署時,必須編制出當前解決方案需要部署的it裝置及環境,包括:需要的網路環境、埠、頻寬、組網方式、網路安全保障措施;需配置的伺服器裝置效能、數量;需配置的儲存資料儲存裝置、容量、儲存速率;甚至還需考慮整個系統的備份裝置容量、備份i/o數、速率、備份策略等。
眾所周知,事務處理效能委員會的tpc-c標準,是測算和衡量計算機硬體裝置效能的行業標準。隨著b/s技術架構的大行其道,spec組織專門推出了針對web伺服器響應客戶端web訪問請求的效能測算標準,即spec web系列。因此,如果是傳統的基於事務處理模式的伺服器,仍採用tpc-c的方式進行測算;如果是web伺服器,則需要採用spec web系列的標準進行測算。然而,很遺憾的看到,很多人在測算伺服器效能時完全忽視這兩種差別。
tpc-c的事務處理是在乙個9個表的資料庫上實現的事務處理過程包括:更新、插入、刪除、終止,以及對主和次級鍵的訪問,每種事務處理95%的響應時間應小於或等於5秒,其中,庫存水平的響應時間可以在60秒以內。tpc-c值表示每分鐘處理的標準事務量,單位是tpmc。
spec web99,web 伺服器可以支援的併發接入數。specweb99 檢測程式模擬客戶通過慢internet 連線,向web 伺服器傳送http 工作量請求。
spec web2005,作為specweb99的繼承者,specweb2005延續了spec的傳統測試的原理,通過多台客戶機向伺服器發出http get請求,請求呼叫web伺服器上的網頁檔案,這些檔案從數千位元組到數兆位元組不等。在相同的時間裡,伺服器回答的請求越多,就表明伺服器對客戶端的處理能力越強,系統的web效能就越好。
在技術方案評審和招投標評標過程中,我常常看到這樣的評估伺服器處理能力的**:
示例一:
示例二:
不知道這種評估方法是從那裡開始的,在技術方案文件中,曾多次看到這樣的評估模型和**。即不全是tpc-c的評估方法,又不全是spec web體系的評估方法。
tpc-c是用計算機裝置在每分鐘內所能處理的標準事務的數量來衡量其處理能力的多少;因此,估算乙個應用場景對處理能力的需求,本質上就是估算出每類業務處理事務對應的標準tpc-c事務量,然後在適當考慮冗餘量。tpc-c的測算結果是每分鐘的事務數,單位是tpmc。
tpc-c的通用估算公式如下:
tpc-c = ∑(每分鐘業務事務量 * 標準事務量比率)/ (1 — 冗餘率)。
例如:某業務系統有2類業務處理事務操作,業務事務1每分鐘30000個,每個業務事務1操作相當於0.5個標準tpc-c事務;務事務2每分鐘20000個,每個業務事務2操作相當於2個標準tpc-c事務;考慮30%的系統冗餘。則該業務應用需要的處理能力為:
伺服器處理能力(tpmc) = ((30000 x0.5) + (20000 x 2)) / (1 – 30%) = 78581。
spec web2005標準的衡量結果是一台web伺服器能夠有效響應客戶端的web請求的最大極限個數。因此,測算的結果應該是乙個web請求數字,單位是個。
spec web2005的參考
web訪問響應能力(個) = 2000 * 10% * 3 / (1 – 30%) = 286。
下面以乙個實際工程專案的應用伺服器(部署web service中介軟體)的效能估算為例進行示範。
應用伺服器上執行中介軟體產品,承擔系統的各類業務邏輯元件執行計算,收斂系統使用者對資料庫伺服器的訪問請求,集中對外提**用服務。通過分析,應用伺服器效能需求在於:提供web應用服務、業務邏輯處理。
業務邏輯處理效能方面,主要的應用服務元件效能需求在於:集團資料監測分析、省資料監測分析、業務資料查詢。據調研統計,集團資料為每分鐘3585 條,省資料平均為每分鐘51667條,業務資訊查詢請求平均為每分鐘2151次;集團資料監測分析,每次業務操作約需3個標準tpcc事務,省資料監測分析,每次業務操作約需2個tpcc事務,業務資訊查詢,每次業務操作約需2個tpcc事務;則系統主機的處理能力需求tpcc值計算如下:
因此,應用伺服器的處理能力配置不能低於196731tpmc,其web2005配置指標不能低於72個。針對事務處理型應用場景,需要採用tpc-c的估算方法,估算出具體需要的總tpmc值;而針對web客戶端請求響應型應用場景,除了估算其業務處理能力之外,還需要評估其對客戶端web請求的響應能力,實際配置的伺服器一般不能低於估算結果。
除了考慮存業務處理需要的處理能力需求外,還需要考慮裝置執行環境上其他基礎服務執行開銷:例如作業系統、資料庫伺服器、web伺服器、應用中介軟體等。
由於當期硬體裝置發展非常迅速,一般標配的pc伺服器的tpcc值也常常是幾十萬,高配的甚至上百萬。因此,還有兩條經驗提醒大家注意:
其一,如果業務需求的tpcc值測算出來其實很低(絕大部分應用都是如此),配置一台很低端的pc伺服器都能夠滿足處理能力需求,不能因為想給客戶提供高配置的裝置,而胡亂的編纂tpcc值;而應該從其他方面尋找更加充分有力的理由。
其二、由於pc伺服器處理能力的增強,tpcc值往往不再成為必須選擇小型機的乙個比較充分的理由;但需要給客戶報配小型機方案時,可以嘗試從穩定性、可靠性、高i/o需求、裝置同構需求、外圍裝置特殊要求等方面多想辦法,而不能再一味只從tpcc值這個角度去考慮。
伺服器處理能力,你估算正確過嗎?
但凡寫過技術方案的都知道,在技術方案最終落實到工程實施部署時,必須編制出當前解決方案需要部署的it裝置及環境,包括 需要的網路環境 埠 頻寬 組網方式 網路安全保障措施 需配置的伺服器裝置效能 數量 需配置的儲存資料儲存裝置 容量 儲存速率 甚至還需考慮整個系統的備份裝置容量 備份i o數 速率 備...
伺服器託管你考慮過這些嗎?
伺服器託管是指將您的伺服器及相關裝置託管到具有完善機房設施 高品質網路環境 豐富頻寬資源和運營經驗以及可對使用者的網路和裝置進行實時監控的網路資料中心內,以此使系統達到安全 可靠 穩定 高效執行的目的。託管的伺服器主要由客戶自己進行維護,或者由其它的授權人進行遠端維護。那麼相比之下,伺服器託管到底有...
如何提高伺服器併發處理能力
以下內容為入門級介紹,意在對老技術作較全的總結而不是較深的研究。主要參考 構建高效能web站點 一書。一台伺服器在單位時間裡能處理的請求越多,伺服器的能力越高,也就是伺服器併發處理能力越強 吞吐率,單位時間裡伺服器處理的最大請求數,單位req s 從伺服器角度,實際併發使用者數的可以理解為伺服器當前...