隨着IT運維的不斷髮展,尤爲的Linux的飛速發展,愈來愈多的企業開始使用Linux操做系統平臺,例如CentOS、RedHat、Ubuntu、Fedora等等,成千上億個網站涌如今當今互聯網,互聯網已經成爲必不可少的工具,那今天咱們跟你們一塊兒來分享討論目前用的最多的Linux下主流網站架構。php
LVS+Keepalived+Nginx+Tomcat+Mysql前端
通常網站整體分爲四層,依次爲前端負載均衡、中間代理、後端服務、數據庫層。nginx
1) LVS負載均衡層算法
LVS負載均衡層主要用來抵禦大流量及轉發數據功能,通常基於TCP/IP 四層協議進行轉發,根據不一樣的內部環境使用的轉發方式也不同,一般DR模式效率比較高,LVS+keepalived結合,可使用keepalived去管理咱們整個配置文件,讓負責均衡變得簡單實用,能夠各類策劃來檢查後端Nginx或者Squid服務是否正常。sql
LVS簡單工做原理:用戶請求LVS VIP,LVS根據轉發方式和算法,將請求轉發給後端服務器,後端服務器接受到請求,返回給用戶,對於用戶來講,看不到WEB後端具體的應用。mongodb
運維人員在維護LVS中,須要密切關注LVS當前轉發鏈接數及系統LVS日誌。經過監控平臺監控VIP、真實IP的狀況、鏈接數的狀況。數據庫
2) Nginx反向代理層後端
Nginx是目前主流的高性能WEB服務器,Nginx由於很是不錯的穩定性、豐富的功能集、示例配置文件和低系統資源的消耗等優勢,目前發展勢頭很是火爆。緩存
Nginx主要基於7層應用,可以實現各類規則轉發,反向代理咱們後端的JAVA、PHP動態服務器,同時Nginx自己處理靜態頁面的能力官方理論併發5w/s,同時Nginx還能夠做爲緩存服務器存儲咱們靜態頁面緩存,性能跟squid不相上下。服務器
做爲IT運維人員在平常運維中,須要長期的關注網站的總體運行狀況,分析網站瓶頸,不斷優化Nginx的相關參數,並確保Nginx跟後端服務鏈接是否有異常等。
3) 後端服務層
後端存放咱們真正的網站和後臺服務,經過前端Nnginx調用,後端常見的服務解析軟件,若是是jsp語言的話,容器爲Tomcat、Resin、Weblogic等等。
若是是PHP程序,咱們就須要安裝PHP環境來解析php代碼,而後經過前端Nginx反向代理提供給用戶訪問。
在平常的運維中,須要注意後端服務層的監控,及鏈接數的問題,要實時關注並監控後端服務的正常,配置多實例,冗餘案例。
4) 數據庫層
目前互聯網主流數據庫有Mysql、Mariadb、mongodb、Oracle等等,對於數據庫是整個架構的核心層,並且數據是企業生存之本,因此數據庫的架構和維護也是相當重要的。中大型的互聯網公司都有本身專職的DBA人員負責Mysql的運行和維護。
對於IT運維人員在維護數據庫時須要密切關注數據庫併發數、鏈接池等變化,關注數據庫主從、讀寫分離狀態及日誌的變化狀況,並制定完整的備份機制完成數據庫的備份,有問題及時處理。