從日活數百到千萬並發,觀伺服器架構升級之路

2020-12-05 51CTO

網站運維人員經常遇到一個問題,那就是隨著業務訪問量的不斷增大,需要不斷調整伺服器配置及數量來應對業務系統宕機,那麼該如何根據業務系統的訪問量變化調整伺服器架構呢?

1、系統架構演化歷程-初始階段架構

初始階段 的小型系統 應用程式、資料庫、文件等所有的資源都在一臺伺服器上通俗稱為LAMP

特徵:

應用程式、資料庫、文件等所有的資源都在一臺伺服器上。

描述:

通常伺服器作業系統使用linux,應用程式使用PHP開發,然後部署在Apache上,資料庫使用Mysql,匯集各種免費開源軟體以及一臺廉價伺服器就可以開始系統的發展之路了。

2、系統架構演化歷程-應用服務和數據服務分離

好景不長,發現隨著系統訪問量的再度增加,webserver機器的壓力在高峰期會上升到比較高,這個時候開始考慮增加一臺webserver

特徵:

應用程式、資料庫、文件分別部署在獨立的資源上。

描述:

數據量增加,單臺伺服器性能及存儲空間不足,需要將應用和數據分離,並發處理能力和數據存儲空間得到了很大改善。

3、系統架構演化歷程-使用緩存改善性能

特徵:

資料庫中訪問較集中的一小部分數據存儲在緩存伺服器中,減少資料庫的訪問次數,降低資料庫的訪問壓力。

描述:

系統訪問特點遵循二八定律,即80%的業務訪問集中在20%的數據上。

緩存分為本地緩存和遠程分布式緩存,本地緩存訪問速度更快但緩存數據量有限,同時存在與應用程式爭用內存的情況。

4、系統架構演化歷程-使用應用伺服器集群

在做完分庫這些工作後,資料庫上的壓力已經降到比較低了,又開始過著每天看著訪問量暴增的幸福生活了,突然有一天,發現系統的訪問又開始有變慢的趨勢了,這個時候首先查看資料庫,壓力一切正常,之後查看webserver,發現apache阻塞了很多的請求,而應用伺服器對每個請求也是比較快的,看來 是請求數太高導致需要排隊等待,響應速度變慢

特徵:

多臺伺服器通過負載均衡同時向外部提供服務,解決單臺伺服器處理能力和存儲空間上限的問題。

描述:

使用集群是系統解決高並發、海量數據問題的常用手段。通過向集群中追加資源,提升系統的並發處理能力,使得伺服器的負載壓力不再成為整個系統的瓶頸。

5、系統架構演化歷程-資料庫讀寫分離

享受了一段時間的系統訪問量高速增長的幸福後,發現系統又開始變慢了,這次又是什麼狀況呢,經過查找,發現資料庫寫入、更新的這些操作的部分資料庫連接的資源競爭非常激烈,導致了系統變慢。

特徵:

多臺伺服器通過負載均衡同時向外部提供服務,解決單臺伺服器處理能力和存儲空間上限的問題。

描述:

使用集群是系統解決高並發、海量數據問題的常用手段。通過向集群中追加資源,使得伺服器的負載壓力不在成為整個系統的瓶頸。

6、系統架構演化歷程-反向代理和CDN加速

特徵:

採用CDN和反向代理加快系統的 訪問速度。

描述:

為了應付複雜的網絡環境和不同地區用戶的訪問,通過CDN和反向代理加快用戶訪問的速度,同時減輕後端伺服器的負載壓力。CDN與反向代理的基本原理都是緩存。

7、系統架構演化歷程-分布式文件系統和分布式資料庫

隨著系統的不斷運行,數據量開始大幅度增長,這個時候發現分庫後查詢仍然會有些慢,於是按照分庫的思想開始做分表的工作

特徵:

資料庫採用分布式資料庫,文件系統採用分布式文件系統。

描述:

任何強大的單一伺服器都滿足不了大型系統持續增長的業務需求,資料庫讀寫分離隨著業務的發展最終也將無法滿足需求,需要使用分布式資料庫及分布式文件系統來支撐。

分布式資料庫是系統資料庫拆分的***方法,只有在單表數據規模非常龐大的時候才使用,更常用的資料庫拆分手段是業務分庫,將不同的業務資料庫部署在不同的物理伺服器上

8、系統架構演化歷程-使用NoSQL和搜尋引擎

特徵:

系統引入NoSQL資料庫及搜尋引擎。

描述:

隨著業務越來越複雜,對數據存儲和檢索的需求也越來越複雜,系統需要採用一些非關係型資料庫如NoSQL和分資料庫查詢技術如搜尋引擎。應用伺服器通過統一數據訪問模塊訪問各種數據,減輕應用程式管理諸多數據源的麻煩。

9、系統架構演化歷程-業務拆分

特徵:

系統上按照業務進行拆分改造,應用伺服器按照業務區分進行分別部署。

描述:

為了應對日益複雜的業務場景,通常使用分而治之的手段將整個系統業務分成不同的產品線,應用之間通過超連結建立關係,也可以通過消息隊列進行數據分發,當然更多的還是通過訪問同一個數據存儲系統來構成一個關聯的完整系統。

縱向拆分:

將一個大應用拆分為多個小應用,如果新業務較為獨立,那麼就直接將其設計部署為一個獨立的Web應用系統

縱向拆分相對較為簡單,通過梳理業務,將較少相關的業務剝離即可。

橫向拆分:將復用的業務拆分出來,獨立部署為分布式服務,新增業務只需要調用這些分布式服務

橫向拆分需要識別可復用的業務,設計服務接口,規範服務依賴關係。

10、系統架構演化歷程-分布式服務

特徵:

公共的應用模塊被提取出來,部署在分布式伺服器上供應用伺服器以服務的方式調用,提高系統的可用性調用。

【編輯推薦】

【責任編輯:

武曉燕

TEL:(010)68476606】

相關焦點

  • 從百萬到千萬量級,飛騰CPU的進擊之路
    打開APP 從百萬到千萬量級,飛騰CPU的進擊之路 黃晶晶 發表於 2021-01-07 15:21:00 電子發燒友網報導(文
  • web伺服器性能對比
    Nginx才短短幾年,就拿下了Web伺服器大壁江山,眾所周知,Nginx在處理大並發靜態請求方面,效率明顯高於Httpd,甚至能輕鬆解決C10K問題。在高並發連接的情況下,Nginx是Apache伺服器不錯的替代品。Nginx同時也可以作為7層負載均衡伺服器來使用。
  • 「贏在中國」ARM架構伺服器處理器僅有的未來
    尤其是在蓬勃發展的雲計算、大數據產業過程中,一旦出現如中興禁售事件,如此龐大的市場和緊密關聯的產業耦合,受影響的就不是中興一家公司了,而是整個以伺服器平臺為基礎設施的信息化產業,從電子終端、外賣服務到共享單車的眾多行業將處於停滯,甚至消失。最根本的問題就是一家壟斷,無他選擇!
  • 浪潮宣布AGX-2伺服器將支持英偉達Volta架構
    《浪潮宣布AGX-2伺服器將支持英偉達Volta架構》文章已經歸檔,不再展示相關內容,編輯建議你查看最新於此相關的內容:香港快速穩定的伺服器租用推薦轉眼間就要到四月了,知名主機商HostEase推出的香港伺服器仍在火熱促銷中,多方案新世界機房伺服器滿足不同用戶的需求,低至 600 多元。想要租用香港伺服器的朋友,不妨關注一下。
  • 一文理解分布式架構
    如:分布式mysql中間件 mycat ,來處理大並發大數據量的構架。1> 集群 與 分布式2> 負載均衡3> 分布式相關的高可用、容災等名詞解釋4> Mycat 中間件學習三、分布式架構的演進(1)初始階段架構 特徵:應用程式,資料庫,文件等所有資源都放在一臺伺服器上。
  • 分布式架構概述
    分布式架構是一個非常複雜的體系,任何技術都不是孤立的存在,任何技術都無法適應所有場景。作為一名分布式系統架構或者資深研發人員,我們必須儘可能多的學習與之相關的各種知識,掌握各種技術的演進路線,正式從一名碼農蛻變成為架構師什麼是分布式?網際網路應用的特點是:高並發,海量數據。
  • 技術揭秘12306改造(一):尖峰日PV值297億下可每秒出票1032張
    【編者按】12306網站曾被認為是「全球最忙碌的網站」,在應對高並發訪問處理方面,曾備受網民詬病。 2015年鐵路客票春運購票高峰期已過,並且12306網站今年沒「癱瘓」,也順利過關。因此記者在第一時間聯繫到一位對12306改造非常關注的技術架構師,他從技術的角度,用科學論證的方式,指出原因所在,並根據他的經驗進一步說明12306是如何實現高流量高並發的關鍵技術,與大家共享。
  • 一步一圖,帶你了解分布式架構的前世今生
    目錄:什麼是分布式架構? 分布式架構的演進 分布式服務面臨的問題 什麼是分布式架構?特徵:應用程式,資料庫,文件等所有資源都放在一臺伺服器上。描述:使用集群是系統解決高並發、海量數據問題的常用手段。通過向集群中追加資源,提升系統的並發處理能力,使得伺服器的負載壓力不再成為整個系統的瓶頸。(5)資料庫讀寫分離
  • 組織架構升級調整 新城控股謀變升級
    來源:新浪財經2021年1月8日,新城控股(601155.SH)宣布,公司旗下兩大事業部將進行一定程度的組織架構的調整。這一調整的背景,在於匹配新城控股全新的戰略規劃。圍繞這一新戰略規劃,新城控股組織架構將進行調整,推進組織變革升級,提升組織效能和管理效率。具體來看,自2020年初進行過一輪調整之後,此次新城控股住宅開發事業部的架構將進一步調整,調整後下設滬蘇大區、華北大區、浙江大區、蘇南大區、華南大區、淮海大區、山東大區、蘇皖大區、湖北大區、豫陝大區、成渝大區、湖南大區、雲貴大區、皖贛大區等十四個大區。
  • 乾貨:記一次JavaWeb網站技術架構總結
    由於我們是單體架構,優化架構在短時間內是不現實的,增加機器是一個不錯的選擇。這時候,我們可能要把應用和資料庫服務單獨部署,如果有條件也可以把文件伺服器單獨部署。  用戶的請求發送給反向代理,然後反向代理把請求轉發到後端的伺服器。  嚴格意義上來說,Nginx是屬於web伺服器,一般處理靜態html、css、js請求,而Tomcat屬於web容器,專門處理JSP請求,當然Tomcat也是支持html的,只是效果沒Nginx好而已。
  • 小蜜蜂將推出C/S架構RFID倉儲物流管理軟體產品
    小蜜蜂根據近期成功的項目實踐與總結,將研發推出基於C/S架構(客戶機/伺服器)的RFID倉儲物流軟體標準版產品。此產品繼承了小蜜蜂RFID倉儲物流解決方案組合的核心組件,成功結合了實際的客戶需求,將更有針對性的滿足客戶的需求。
  • 什麼才是真正的架構設計?
    部署拓撲架構圖(實際物理架構圖):拓撲架構,包括架構部署了幾個節點,節點之間的關係,伺服器的高可用,網路接口和協議等,決定了應用如何運行,運行的性能,可維護性,可擴展性,是所有架構的基礎。這個圖主要是運維工程師主要關注的對象。物理架構主要考慮硬體選擇和拓撲結構,軟體到硬體的映射,軟硬體的相互影響。三.
  • 架構大遷移:從Java Spring到ReactJS +API微服務架構
    大家可能手頭都維護著一定數量舊系統,系統可能還能跑,但是跑的怎麼樣,可能沒有人能說清楚,還時常需要維護:重啟、應對安全檢查啥的,它代碼可以追溯到張山、李四到王二麻子好多代禿頂的碼農。面對著這樣的窘境,你能做的,而且唯一需要做的就是對其重構,重新開發一個全新架構的,高性能的,流行的系統。
  • 7nm GPU又要等了 NV黃仁勳:沒必要升級Volta及Turing架構
    實際上黃仁勳的表態要比RTX顯卡是否升級更為直接,因為NVIDIA的表態意味著他們不會在短時間內升級Volta及Turing兩款架構,這兩者分別用於數據中心及消費級顯卡,都是12nm FFN工藝,所以期待很快看到7nm GPU的要失望了。
  • 緊貼伺服器:F5應用安全與提速之道
    伺服器,這個IT系統中的將軍,離它最近的地方是負載均衡設備,負載均衡恰恰又是F5的發家之路,基於這個位置,F5提供了多款用於Web應用安全與提速的產品,以保證伺服器的安全與性能。伺服器端採用支持SSL的Web伺服器,用戶端採用支持SSL的瀏覽器實現安全通信。  但SSL只是起到保護Web傳輸的保密性。換句話說,我們不能信任Web瀏覽器所做的安全檢查工作,通過SSL加密連接不會對提交到應用程式的數據內容造成任何的影響。
  • 數據驅動第五波計算浪潮 Arm伺服器產業迎來新一輪機會
    華為智能計算TaiShan&Atlas領域總裁張熙偉評價道:「作為華為智能計算最用『芯』之作,TaiShan伺服器解決方案聚焦特定應用場景,充分發揮鯤鵬Arm處理器多核架構、高並發的計算優勢,可以將高效能計算帶入每一個數據中心。」
  • 從Hadoop到自主研發,技術解讀阿里去IOE後的系統架構
    盤古,飛天的分布式文件系統,在內部架構上盤古採用Master/ChunkServer結構,Master管理元數據,ChunkServer負責實際數據讀寫,通過Client對外提供類POSIX的專有API。在集群擴展到5K規模後,相關問題紛至沓來,主要可分為兩個部分:首先,盤古MasterIOPS問題;其次,盤古Master冷啟動速度。那麼究竟是什麼造成了這些問題?阿里工程師又該如何應對?
  • 向雲而生 浪潮2U4路伺服器NF8260M6
    北京2020年10月12日 /美通社/ -- 每個計算時代都有獨領風騷的技術,雲計算對IT 產業的影響無疑是巨大和深遠的,十年來,雲計算迅猛發展,數據中心規模越來越大,對計算力的需求永無止境。計算力呈指數級增加帶來的是對數據中心能效、成本、運維等方面更為苛刻的要求。
  • 京東資深架構師:學架構從三高開始學就行了
    我最近 Get 到一個大佬的獨到觀點,真可謂醍醐灌頂,看下他的從業經歷,我覺得他這個辦法一定奏效。大佬是誰?他叫潘新宇,現在是京東的資深架構師,期間成功帶領團隊完成架構轉型,將多個電商模塊從煙囪式升級到平臺化,最終演化到中臺化。落地過能支撐百萬並發到系統架構;將扣減從單機幾十的 TPS 優化至萬級左右;參與過十幾次大促備戰,在突發流量應對上積累了豐富的經驗。
  • 《流放之路》五大BOSS預覽 19日開啟裂隙賽季
    導 讀 流放之路國服內測將於1月18日正式結束,此前小編曾為大家報導過:1月18日「奪魂內測」結束之後國服伺服器不停服