0532-88983785 0532-68613670
青島網(wǎng)站建設(shè)|青島網(wǎng)站優(yōu)化|青島微信開(kāi)發(fā)|青島網(wǎng)站制作

大型網(wǎng)站的架構(gòu)演進(jìn)

時(shí)間:2018-10-26 10:43 來(lái)源:山東迅優(yōu)傳媒 作者:admin 點(diǎn)擊:1578次

大型網(wǎng)站的技術(shù)問(wèn)題主要來(lái)自于用戶多、同時(shí)訪問(wèn)量大、數(shù)據(jù)量大。處理數(shù)以P計(jì)的數(shù)據(jù)和數(shù)以百萬(wàn)計(jì)的用戶,問(wèn)題就會(huì)變得非常困難。大型網(wǎng)站架構(gòu)的主要目的就是解決這些問(wèn)題。在面對(duì)一個(gè)大型網(wǎng)站時(shí),首先要討論的是大型網(wǎng)站的特點(diǎn):高并發(fā)性、大流量、高可用性、海量數(shù)據(jù)。我們今天就來(lái)了解一下大型網(wǎng)站架構(gòu)演化發(fā)展歷程。

大型網(wǎng)站的架構(gòu)演進(jìn) computer-1294359_1280

1.初始階段:大型網(wǎng)站都是從小型網(wǎng)站架構(gòu)逐步演化而來(lái)。通常一臺(tái)服務(wù)器就綽綽有余。

2.采取應(yīng)用數(shù)據(jù)分離:隨著網(wǎng)站業(yè)務(wù)的發(fā)展,服務(wù)器逐漸不能滿足需求,這時(shí)就需要應(yīng)用和數(shù)據(jù)分離。應(yīng)用與數(shù)據(jù)分離后,整個(gè)網(wǎng)站使用三個(gè)服務(wù)器:應(yīng)用服務(wù)器、文件服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器。

3.使用緩存改善網(wǎng)站性能:80%的業(yè)務(wù)訪問(wèn)集中在20%的數(shù)據(jù)上,將這一小部分?jǐn)?shù)據(jù)存入內(nèi)存就可以減少數(shù)據(jù)庫(kù)訪問(wèn)的壓力。網(wǎng)站使用的緩存一般分為兩種:應(yīng)用服務(wù)器上的本地緩存和分布式緩存服務(wù)器上的遠(yuǎn)程緩存。

4.使用應(yīng)用服務(wù)器集群:使用集群是解決高并發(fā)、數(shù)據(jù)量大等問(wèn)題的常用手段。由于單個(gè)應(yīng)用服務(wù)器處理能力有限,網(wǎng)站訪問(wèn)高峰期會(huì)造成“擁堵”現(xiàn)象。因此,有必要使用負(fù)載均衡處理器??梢詫⒃L問(wèn)請(qǐng)求從瀏覽器分發(fā)到應(yīng)用服務(wù)器集群中的任何服務(wù)器。

5.數(shù)據(jù)庫(kù)讀寫(xiě)分離:目前主流數(shù)據(jù)庫(kù)大多提供主從設(shè)備功能。通過(guò)在一個(gè)數(shù)據(jù)庫(kù)中建立主從關(guān)系,一個(gè)數(shù)據(jù)庫(kù)服務(wù)器的數(shù)據(jù)更新可以同步到另一個(gè)服務(wù)器。利用這一特性,實(shí)現(xiàn)了數(shù)據(jù)庫(kù)加載與寫(xiě)入分離,減輕了數(shù)據(jù)庫(kù)的負(fù)載壓力

6.使用反向代理和CDN加速網(wǎng)站響應(yīng):CDN和逆代理的基本原理是緩存,不同之處在于,當(dāng)用戶請(qǐng)求網(wǎng)站服務(wù)時(shí),CDN可以部署到網(wǎng)絡(luò)提供商的機(jī)房,并從最近的網(wǎng)絡(luò)提供商機(jī)房獲取數(shù)據(jù)。當(dāng)用戶的請(qǐng)求到達(dá)中央計(jì)算機(jī)室時(shí),首先訪問(wèn)的服務(wù)器是反向代理服務(wù)器。如果反向代理服務(wù)器中緩存用戶請(qǐng)求的資源,它將直接返回給用戶。

7.使用分布式文件系統(tǒng)和分布式數(shù)據(jù)庫(kù)系統(tǒng):只有當(dāng)單個(gè)表的數(shù)據(jù)規(guī)模非常大時(shí),才會(huì)使用分布式數(shù)據(jù)庫(kù)拆分網(wǎng)站數(shù)據(jù)庫(kù)。通常,更常用的數(shù)據(jù)庫(kù)分區(qū)方法是在不同的物理服務(wù)器上部署不同業(yè)務(wù)數(shù)據(jù)的業(yè)務(wù)部門(mén)。

8.使用NoSQL和搜索引擎:NoSQL和搜索引擎是一種互聯(lián)網(wǎng)技術(shù)手段,對(duì)可伸縮的分布式功能有更好的支持。應(yīng)用服務(wù)器可以通過(guò)一個(gè)統(tǒng)一的數(shù)據(jù)訪問(wèn)模塊訪問(wèn)所有類型的數(shù)據(jù),減輕管理多個(gè)數(shù)據(jù)源的繁瑣。

9.業(yè)務(wù)拆分:大型網(wǎng)站被分成許多不同的應(yīng)用,每個(gè)應(yīng)用都是獨(dú)立部署和維護(hù)的??梢酝ㄟ^(guò)超鏈接建立應(yīng)用之間的關(guān)系,通過(guò)消息隊(duì)列進(jìn)行數(shù)據(jù)分發(fā)。當(dāng)然,最常見(jiàn)的方法是訪問(wèn)同一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)以形成一個(gè)相關(guān)的完整系統(tǒng)。

10.分布式服務(wù):每個(gè)應(yīng)用系統(tǒng)需要執(zhí)行的相同的業(yè)務(wù)操作,可以連接到數(shù)據(jù)庫(kù),提供通用的業(yè)務(wù)服務(wù),而應(yīng)用系統(tǒng)只需要管理一個(gè)用戶界面,并通過(guò)分布式服務(wù)調(diào)用一個(gè)通用的業(yè)務(wù)服務(wù)來(lái)完成特定的任務(wù)。

當(dāng)一個(gè)大型網(wǎng)站演化到此,大多數(shù)技術(shù)問(wèn)題,如跨數(shù)據(jù)中心的實(shí)時(shí)數(shù)據(jù)同步,以及特定的網(wǎng)站業(yè)務(wù)相關(guān)問(wèn)題是現(xiàn)有的技術(shù)架構(gòu),都可以通過(guò)合并和改進(jìn)現(xiàn)有技術(shù)架構(gòu)來(lái)解決。



  迅優(yōu)傳媒是一家專注于網(wǎng)站建設(shè)、網(wǎng)站優(yōu)化、網(wǎng)站設(shè)計(jì)網(wǎng)站制作、網(wǎng)站托管代運(yùn)營(yíng)微信開(kāi)發(fā)、小程序開(kāi)發(fā)的互聯(lián)網(wǎng)科技公司。我們有完備的建站流程和專業(yè)的開(kāi)發(fā)、設(shè)計(jì)人員,與客戶深度合作并針對(duì)不同的客戶提供專屬的網(wǎng)站策劃方案。
(責(zé)任編輯:admin)
網(wǎng)站建設(shè)定制

0532-88983785 / 0532-68613670

我要定制網(wǎng)站