目前網站(zhàn)架構普通(tōng)分紅負載平衡層、WEB層和(hé)數(shù)據庫層,我其實普通(tōng)還(hái)會(huì)多(duō)加一層,即文件效勞器(qì)層,這樣我們在後面的討(tǎo)論過程中,我們能夠依次對這四層停止討(tǎo)論;這裏為(wèi)了更具有(yǒu)壓服力,我将用三個(gè)并發較大(dà)的消費環境來(lái)闡明(míng)下,一個(gè)是某電(diàn)子商務網站(zhàn)(并發最大(dà)值 2000,日PV500萬左右,這裏說的峰值,下面的網站(zhàn)相似)、一拍網網站(zhàn)(并發最大(dà)值1500,日PV500萬左右)、以前維護的大(dà)型CDN廣告網站(zhàn)(并發最大(dà)值5000,日PV 5000萬左右)。
負載平衡層
首先說下負載平衡層,我們熟習的硬件/軟件技(jì)術(shù)有(yǒu)F5/LVS、HAProxy,還(hái)有(yǒu)Nginx,它們的性能都是十分優良的,且不說F5的抗并發才能,LVS如今在全世界範圍內(nèi)的應用,而且淘寶如今晉級架構,也将LVS取代了F5,HAProxy可(kě)能大(dà)家(jiā)不是特别熟習,但(dàn)它的确在消費環境下表現優良,強大(dà)的吞吐才能,穩定性比之硬件過尤不及。
再說下Nginx,我是将Nginx+Keepalived架構用于了各種消費環境中的,經過長時(shí)間(jiān)的線上(shàng)察看,發現Nginx作(zuò)為(wèi)負載平衡器(qì)/反向代理(lǐ)也很(hěn)穩定,就算(suàn)并發壓力過大(dà),我們前面能夠用F5/LVS來(lái)頂,而将Nginx作(zuò)為(wèi)中層代理(lǐ),這樣的效果其實也 不差,所以負載平衡層的壓力不能算(suàn)是特别大(dà)。
WEB層
WEB層這塊壓力比拟大(dà)的網站(zhàn)如今都換成了Nginx作(zuò)為(wèi)WEB應用效勞器(qì),事實上(shàng),它的抗并發才能的确超越了預期;我朋友(yǒu)維護的一家(jiā)門(mén)戶網站(zhàn),頂峰期時(shí)某台Nginx應用效勞器(qì)的并興旺到了一萬以上(shàng),但(dàn)Nginx也很(hěn)擔任和(hé)穩定的提供效勞,在實踐的消費環境中,假如我們思索到後端的數(shù)據庫效勞時(shí),一萬并發應該也算(suàn)是一個(gè)比拟大(dà)的數(shù)值了。
另外,Linux集群有(yǒu)一個(gè)優勢,就是它的高(gāo)擴展性,就算(suàn)我們的網站(zhàn)的并發有(yǒu)一萬以上(shàng),我們後端的WEB效勞是Apache,我們多(duō)加幾台Apache效勞器(qì)即可(kě),在實踐的線上(shàng)維護時(shí),我們發現,頂峰期間(jiān),實踐上(shàng)每台WEB的并發并不算(suàn)是特别大(dà),所以網站(zhàn)的壓力在這一層我們也能經過技(jì)術(shù)手腕加以克制(zhì)。
文件效勞器(qì)層
文件效勞器(qì)層,由于網站(zhàn)的後期宣傳策話(huà),名氣也越來(lái)越大(dà),PV值也越來(lái)越高(gāo),原先的DRBD+Heartbeat+NFS(這個(gè)其實也隻是單NFS,隻不過我們應用DRBD來(lái)保證NFS的高(gāo)可(kě)用而已)曾經越來(lái)越頂不住壓力了,這個(gè)時(shí)分我們想到了散布式文件系統,我測試的的是MooseFS,在內(nèi)網測試了很(hěn)長時(shí)間(jiān)還(hái)是沒敢用到消費環境下面,googel的散布式文件系統還(hái)是很(hěn)成熟的,引薦大(dà)家(jiā)學習;最後還(hái)是用采用以前的CDN傳統的辦法處理(lǐ)這個(gè)問題,即用了squid反向代理(lǐ)加速器(qì)來(lái)處理(lǐ)小(xiǎo)文件過多(duō)的問題,Nginx強大(dà)的正則處置分發才能,也讓後端的NFS壓力變得(de)很(hěn)小(xiǎo);另外,我還(hái)用采用域名的分散戰略例如運用pics.xxx.com/pdf.xxx.com…來(lái)辨别标志(zhì)為(wèi)a或b的一系列文件,這些(xiē)文件存儲的時(shí)分,仍然依照标志(zhì),存到pics或pdf的效勞器(qì)上(shàng)。這個(gè)戰略将辨别機器(qì)的任務交由dns效勞器(qì)來(lái)執行(xíng),擴容時(shí)會(huì)相應輕松。
這需求web項目初期就規劃好這些(xiē)東東,後期才轉用域名戰略的本錢(qián)比拟高(gāo)以至不能夠完成,大(dà)家(jiā)能夠留意下,其實這一層假如網站(zhàn)是專業的圖片效勞器(qì)網站(zhàn)時(shí)壓力還(hái)是很(hěn)大(dà)的,我們需求在這個(gè)上(shàng)面投入足夠多(duō)的硬件資源。
數(shù)據庫層
數(shù)據庫層的壓力,我覺得(de)網站(zhàn)的PV和(hé)并發上(shàng)去以後,數(shù)據庫這塊的壓力是最大(dà)的,CDN大(dà)型廣告網站(zhàn)我們用的是oracle RAC計(jì)劃,它保證了數(shù)據的高(gāo)可(kě)用性,當然了價錢(qián)也是十分昂貴的(假如運用高(gāo)配置的PC效勞器(qì),Oracle普通(tōng)依照CPU個(gè)數(shù)收費);那(nà)麽免費的MySQL數(shù)據庫,面對這種并發壓力大(dà)的狀況,又用哪些(xiē)辦法呢?首先,我們說下傳統的MySQL主從計(jì)劃,配置簡單,單機MySQL優化做(zuò)好事性能也不弱,假如這種架構處理(lǐ)不了數(shù)據庫的壓力狀況,我們能夠思索以下幾種計(jì)劃:
◆常規複制(zhì)架構–Master-slaves,是由一個(gè)Master複制(zhì)到一個(gè)或多(duō)個(gè)Salve的架構形式,主要用于讀壓力大(dà)的應用數(shù)據庫端低(dī)價擴展處理(lǐ)計(jì)劃,讀寫别離,Master主要擔任寫方面的壓力。
◆級聯複制(zhì)架構,即Master-Slaves-Slaves,這個(gè)也是為(wèi)了避免Slaves的讀壓力過大(dà),而配置一層二級 Slaves,很(hěn)容易處理(lǐ)Master端由于隸屬slave太多(duō)而成為(wèi)瓶勁的風險。
◆Dual Master與級聯複制(zhì)分離架構,即Master-Master-Slaves,最大(dà)的益處是既能夠防止主Master的寫操作(zuò)遭到Slave集群的複制(zhì)帶來(lái)的影(yǐng)響,而且保證了主Master的單點毛病。
◆MySQL的數(shù)據庫切分,我們能夠經過數(shù)據切恰恰技(jì)術(shù)将一個(gè)大(dà)的MySQL Server切分紅多(duō)個(gè)小(xiǎo)的MySQL Server,既解了寫入性能瓶頸問題,同時(shí)也一次提升了整個(gè)數(shù)據庫集群的擴展性,從而處理(lǐ)了數(shù)據庫壓力過大(dà)的問題,這個(gè)如今也是我在消費環境中比拟引薦的做(zuò)法之一。
企業網站(zhàn)建設解決方案 營銷型網站(zhàn)建設解決方案 行(xíng)業門(mén)戶網站(zhàn)建設解決方案 外貿網站(zhàn)解建設決方案 品牌形象網站(zhàn)建設解決方案 購物商城網站(zhàn)建設解決方案 政府網站(zhàn)建設解決方案 手機網站(zhàn)建設解決方案 教育培訓網站(zhàn)建設解決方案 珠寶高(gāo)端奢飾品網站(zhàn)建設解決方案 房(fáng)地産、地産項目網站(zhàn)建設解決方案 集團、上(shàng)市企業網站(zhàn)建設解決方案 數(shù)碼、電(diàn)子産品網站(zhàn)建設解決方案 美容、化妝品行(xíng)業網站(zhàn)建設解決方案
10年專業互聯網服務經驗 重慶最專業網站(zhàn)團隊 資深行(xíng)業分析策劃 B2C營銷型網站(zhàn)建設領先者 最前沿視(shì)覺設計(jì)、研發能力 時(shí)刻最新技(jì)術(shù)領先研發能力 具有(yǒu)完備的項目管理(lǐ) 完善的售後服務體(tǐ)系 深厚的網絡運營經驗
中技(jì)互聯一直秉承專業、誠信、服務、進取的價值觀,堅持優秀的商業道(dào)德,以用戶最終價值為(wèi)導向,向用戶提供優質産品和(hé)優質服務,從而赢得(de)了用戶的信賴。始終以不懈的努力、更高(gāo)的目标來(lái)要求自己。
主營業務:網站(zhàn)建設 | 重慶網站(zhàn)建設 | 重慶網站(zhàn)設計(jì) | 重慶網站(zhàn)制(zhì)作(zuò) | 重慶網頁設計(jì) | 重慶網站(zhàn)開(kāi)發
CopyrightZJCOO technology Co., LTD. All Rights Reserved.
渝ICP 備11003429号