作為一個技術創業投資公司的董事長, 梁劍坤先生用他獨特的視角為廣大創業者解答技術上的問題。 言歸正傳, 作為一個創業者,
我這個專案需要多少台伺服器?
這是我過去多年經常被問的一個問題, 跟著這個問題一起來的, 其實還有另外三個問題:
需要多大硬碟存儲容量才夠?
需要佔用多少網路頻寬?
當使用者不斷增多, 這個系統以後要怎麼擴展?
首先算硬碟容量, 這是最容易的部分。
首先你要知道平均每個用戶到底會在你的伺服器上留存多少資料?這個“多少資料”我沒有辦法在這個文章裡直接計算, 因為我寫這個文章的時候還不知道你做什麼樣的業務。 不過話說回來, 如果不是電腦專業, 大多數人仍然無法根據自己做的業務來測算到底每個使用者的業務資料需要多少存儲空間。
下面的計算用100M/活躍用戶作為例子。
100M大概能放500-1000張經過處理適合在移動設備上觀看的照片, 或者10-20條經過處理的段視頻, 又或者幾乎看不完的文字、下不完的訂單、數不清的連結, 等等。
接著就看你的用戶數了。
1萬個用戶?那就是100M*10000=1T了。 然後我們還需要考慮使用者活躍比例。 不是你拉進來的每個粉絲都是活躍的。 僵屍粉不會佔用你的存儲資源。 於是, 如果你的用戶只有50%是活躍的, 其實1萬個用戶只要500G就夠了。
那是不是買個500G硬碟就夠了呢?當然不是, 要考慮的因素還有很多。 通常我們為了安全起見, 不會讓設計容量100%用滿, 預留20%應付來不及買新存放裝置/空間的情況是一個不錯的策略。 所以, 我們實際上需要的“有效存儲空間”是500G/80%=625G。
注意看這個新片語“有效存儲空間”, 那麼肯定就有對應的“無效存儲空間”對不對?
通常我們為了保證資料安全, 資料不會只存一份,
高級Raid的方案很複雜多變, 非專業人士無法解釋明白。 用最通常、性價比較高的Raid5+HotSpare方案, N+1+1, 12個2T硬碟能提供約18T格式化後的有效存儲空間。 不要問我這個是怎麼算出來的了, 因為我知道你們絕大多數項目都用不著再算這個, 直接買BAT隨便一家的雲存儲就行, 他們都幫你算好了的, 無論是鏡像還是別的什麼Raid方案。
如果你租的是整台的伺服器/虛擬伺服器, 那麼還需要預留系統軟體所需要的空間,
另外還有日誌, 就是記錄你的伺服器上每一秒每一刻發生了什麼事情。 通常習慣上要求日誌存留至少90天, 沒有人知道你的日誌需要多少空間, 因為這跟你的應用程式怎麼寫日誌很有關係, 每台伺服器留個100-200G基本不會錯。
然後, 硬碟是要分區的(什麼是分區和到底要怎麼分區就不解釋了, 這個實在太專業), 每個分區都不能塞滿, 否則系統也是無法工作的。 為了讓分區有剩餘可用空間, 算出來的“有效存儲空間”+“系統軟體空間”+“日誌留存空間”總和再放大20%, 是可以不加思考的決定。
最後,如果你是自己買硬碟(而不是租用雲存儲),那麼硬碟格式化需要耗掉10%左右的“標稱容量”,再放大10%去算你應該買哪個容量規格的硬碟…既然那麼多事要操心,生產系統還是買雲計算服務吧;本地搭建開發環境、性能測試環境才用得著考慮那麼多。
如果找不到身邊的朋友幫你考慮那麼多,那麼就找3N好了。
未完待續,標題黨下期才講怎麼算伺服器數量,耐心點…
最後,如果你是自己買硬碟(而不是租用雲存儲),那麼硬碟格式化需要耗掉10%左右的“標稱容量”,再放大10%去算你應該買哪個容量規格的硬碟…既然那麼多事要操心,生產系統還是買雲計算服務吧;本地搭建開發環境、性能測試環境才用得著考慮那麼多。
如果找不到身邊的朋友幫你考慮那麼多,那麼就找3N好了。
未完待續,標題黨下期才講怎麼算伺服器數量,耐心點…