網站,很多it行業的人都瞭解。
網站的成長過程,卻是很多it行業人士並不理解的過程,往往還有人調侃:做個淘寶網多少錢?本文將逐步講述網站的成長過程。講述網站的訪問量從0到1,從1到100,從100到1000,從1000到1000000+的過程。
靜態網站
這是所有網站的起步階段,幾乎只有幾個頁面,固定的html程式碼。部分網站是由程式設計師偷懶直接建立,可能會繞過這個環節。
這時候往往使用虛擬主機發布。或者使用低配伺服器釋出。內容更新往往頻率很低。順道提一嘴,這個時候的網站,甚至可以通過物件儲存進行釋出,參考本站文件《手裡一堆閒置域名怎麼用起來?巧用OSS釋出靜態網站!》
動態網站
這是網站的初步形態,相對有了一些動態功能,有了資料庫,有了登入等功能,具備文章內容的增刪改查等常見功能。其實已經是個名副其實的網站了。但是這個過程,僅僅是靜態網站的升級,有了動態內容可展示。大部分企業官網,部落格等均為此類。
這時候的網站依然侷限於單機發布,或者使用虛擬主機(網站空間)釋出。網站尚無較難克服的瓶頸出現,推薦使用阿里雲低配ECS釋出,參考《阿里云云伺服器ECS》
訪問量增長第一階段(十幾個使用者併發訪問卡頓):頻寬不足
這個階段,往往是由於靜態資源過多開始引發,開啟一個頁面累計下載圖片,js檔案,甚至視訊等檔案一下子佔用了伺服器總頻寬,從而網站開啟過慢。
這個時候,簡單的做法是增加頻寬,高階點的做法是套用cdn,也或者通過外部引入靜態檔案實現解決。
訪問量增長第二階段(幾十個使用者併發訪問網站報錯甚至超時):單機配置不足
隨著訪問量上升,原本的低配伺服器或者虛擬主機空間的cpu,記憶體等主伺服器資源開始不足。
這個時候,網站依然工作在單機狀態。問題解決過程也很簡單,那就是升級伺服器配置
訪問量增長第三階段(幾百人併發訪問系統延遲很高):硬碟IO資源不足
訪問量上升到一定程度,頻寬夠用,cpu夠用,記憶體夠用等情況下,可能就是硬碟IO不足。
這個時候的升級方案,往往是網站程式與資料庫分離,資料庫單獨存在一塊硬碟上(例如ssd硬碟),甚至專門一臺伺服器放資料庫。這個階段,往往是下一步升級變得特別困難的時候,因為已經開始超出單機承載範圍了。當然,這個階段已經非常有必要依賴CDN等元件加速了。專業的資料庫產品可參考《雲資料庫RDS》
訪問量增長第四階段(超過幾百人併發訪問):大型網站架構
現在的網站,已經算是大型網站了。快取設計,負載均衡釋出,資料庫高效能優化,資料庫讀寫分離,高效能中介軟體,分散式設計,CDN加速,安全防禦,雲架構釋出等等五花八門的技術綜合使用。
這時候往往很難由一個人完成一個網站的開發工作。往往要在很多瓶頸環節做優化:
動靜分離:使用物件儲存OSS共享儲存檔案
快取加速:memcached,Redis 等記憶體型解決方案加速
資料庫:分散式資料庫DRDS,讀寫分離釋出,分庫分表設計,高效能硬碟支援,規範的表結構
負載均衡:實現多web伺服器共同承擔大流量訪問,實現訪客人數與伺服器數量成正比
CDN加速:實現靜態資源讓使用者就近載入
安全防禦:DDOS高防IP,遮蔽惡意重新整理帶來的無效壓力,遮蔽黑名單爬蟲採集
原文地址: https://www.opengps.cn/Blog/View.aspx?id=2... 文章的更新編輯依此連結為準。歡迎關注源站原創文章!