之前,分享了電子商務網站容量規劃的大綱,總體來說,容量規劃是一個非常複雜的工作,涉及各個技術領域的專業內容。 今天在這裡分享一些方法來把握電子商務網站容量規劃的整體。
(1)分而治之
大型的電子商務系統可能非常複雜,包含全球各主要地點的資料中心、全球廣域網路絡、資料中心的當地交換區域網路、安全基礎設施、各資料中心的計算基礎設施、儲存子系統、分散式的資料庫系統等。 從系統設計的角度講,複雜系統的設計通常採用自頂向下的模組化、層次化的構架設計。 層次是基於結構的一種劃分,模組式基於功能的一種劃分。 複雜系統可以先基於層次劃分,然後在每一層次中細分功能模組;也可以先基於模組劃分子系統,然後在子系統內部再劃分。
這種設計思路簡化了問題的複雜度,比較好的控制了再設計的每一階段需要同時考慮的因素的數量。 電子商務系統的容量規劃,對應系統架構的分解,也可以分而治之,對各層次、各模組的性能分別進行容量規劃。 具體到各層次、各模組。 他們對預期容量、性能、擴充性的要求都是不一樣的,分而治之也可以確保容量規劃考慮到足夠細緻。
另外,分而治之能説明把握容量規劃的重點。 根據8/2原則,整體系統的性能的瓶頸,往往取決於系統20%的組建,分而治之説明找到系統中的需要關注的層次和模組,在容量規劃中對這些層次和模組加以重點考慮,往往能達到事半功倍的效果。
(2)利用工具
容量規劃即是科學,又是一種藝術,因為沒有人能精確預測實際的容量需求。 利用工具可以説明預測和分析電子商務系統的行為和需求發展趨勢,為容量規劃提供樣本資料,為理論計算提供實際資料參考。
在兩類工具可以説明容量規劃。 一類是測試控管,通常在系統部署上線和升級之前使用,用於類比使用者使用者實際實際的訪問請求,可以用來測試和觀察系統在接近真實訪問請求的情況下的行為和性能。 類比一定數量的併發訪問,可以用來做壓力測試,説明測試觀察系統在不同的負載下的行為和處理能力的變化情況、趨勢和飽和點。 這些資料都可以極大地説明到容量的分析和預測。 常用的工具如,微軟的免費工具web capacity analysis tool和web application stress tool。
另一類是偵查工具,通常在系統運維階段使用,用於監視系統的實際訪問量和使用率,觀察訪問需求和峰谷值特徵和變化趨勢,説明警告系統容量接近上限是否需要擴充,説明預測一定週期內訪問量和增長趨勢, 便於對可預見的將來系統的進一步升級進行規劃。 某些工具還可以自動進行某些預測分析,預告未來幾個月、半年、一年的容量需求。 3)動態調整
即使在系統上線前進行了非常細緻的容量規劃,系統真正開始運行後,仍然可能發現與實際情況有差異。 另外,伴隨電子商務業務的快速發展,系統訪問需求的變化也可能很快超過預期值。 所以,容量規劃是一個長期的任務,韻味人員需要定期評估系統的負載、利用率、訪問需求的變化情況和趨勢,有必要的話應提出擴充升級的需求。 週期性評估可以使用監控工具的資料,也可以通過理論分析,依據新的需求開展。
下面介紹容量規劃需要考慮的一些主要因素。
1)使用者數量
確定同時使用網站的使用者數量,這個數位通常有兩個主要來源:市場分析和系統分析。 如果網站還未建立或者發佈,網站擁有者和操作人員就可能需要借助市場分析報告來預測網站發佈初期及以後的預期通信量。 如果網站已經建立且已在運行,分析web伺服器的日誌檔,以瞭解網站在不同時間的點擊數以及可以表明網站內容很受歡迎程度是否增加的所有使用趨勢。 計算網站當前支援的使用者數量時,要根據峰值使用來計算,而不是根據典型使用平均或者平均使用。
這裡隱含了一個可用性的問題。 企業應對網站可用性程度做出決策。 例如,是必須保證網站能處理峰值的訪問量,還是保證能處理80%的峰值訪問量就夠了?這取決於公司打算投入多少財力來保證電子商務系統始終能夠滿足需求。 這要看電子商務網站不可用而引起的損失是否值得企業花錢來達到這種可能性。
2)頁面類型
如果web服務已處理靜態頁面為主,由於靜態頁面讀取主要看磁片操作,所以更多考慮的是I/O性能要求,如果web服務需要處理大量動態頁面,那麼對中介軟體系統計算能力和資料庫處理能力的要求就會比較高, 生成動態內容所需的資料查詢處理量越大,對系統計算能力和資料庫處理能力要求就越高。
3)採用何種web應用技術
採用asp、asp.net java、applet、jsp、web service等不同的web應用技術,對系統的處理能力開銷是不一樣的。
4)網站提供的服務內容
例如,通過電子商務提供法律諮詢的服務的網站,網頁的內容可能多數以文字為主,有少量圖片,那麼同樣的條件下,使用者調用某一頁面的時間會比較短,每一使用者請求佔有系統的處理能力資源會比較少。 而如果是通過電子商務提供視頻、圖片資料服務的網站,網頁內頁以圖片、視頻資料為主,可能帶有即時傳送的流媒體內容,那麼使用者調用某一頁面的時間比較長,每一使用者請求佔有系統處理能力資源也會比較多。
對於電子商務網站的基礎設計,每一組建,包括web和中介軟體系統、資料庫系統、伺服器系統、存儲系統、網路系統的容量規劃,簡化來講,都基於一下的公式:系統容量=併發服務請求數x每請求系統開銷。