您好,歡迎來到一站式眾包服務(wù)平臺-威客牛網(wǎng)
當(dāng)前位置:威客牛首頁 > 知識百科 > IT軟件 > 整站建設(shè) > 網(wǎng)站框架設(shè)計思路

網(wǎng)站框架設(shè)計思路

2022-12-04作者:網(wǎng)友投稿
本文主要針對網(wǎng)站架構(gòu)各個方面的建設(shè)進(jìn)行簡單介紹。以下就是贏在威客網(wǎng)小編為您整理的網(wǎng)站框架設(shè)計思路。

架構(gòu)模式

先來說說模式: 每一個模式描述了一個在我們周圍不斷重復(fù)發(fā)生的問題及該問題解決方案的核心。這樣,你就能一次又一次地用該方案而不必做重復(fù)工作 。

先來說說常見的網(wǎng)站架構(gòu)模式。這里沒有涉及具體實現(xiàn)過程,只是簡單介紹其思想和原理,方便日后有用到再深入了解。

分層


分層是企業(yè)應(yīng)用系統(tǒng)中最常見的一種架構(gòu)模式,將系統(tǒng)在 橫向維度 上切分成幾個部分,每個部分負(fù)責(zé)一部分相對比較單一的職責(zé),然后 通過上層對下層的依賴和調(diào)用 組成一個完整的系統(tǒng)。

分層結(jié)構(gòu)對網(wǎng)站支持高并發(fā)向分布式發(fā)展至關(guān)重要,所以 在網(wǎng)站規(guī)模很小的時候就應(yīng)該采用分層的架構(gòu),這樣將來網(wǎng)站做大時才能有更好地應(yīng)對 。

所以說我們在設(shè)計一個新項目的架構(gòu)時,就需要考慮到分層。不能等到日后項目做大了,再重構(gòu)就耗時耗力了。

分割

上面的分層是將軟件在橫向方面進(jìn)行切分,而分割是在 縱向方面 對軟件進(jìn)行切分。 將不同的功能和服務(wù)分割開來,包裝成高內(nèi)聚低耦合的模塊單元 。

比如在應(yīng)用層,將購物、論壇、搜索、廣告分割成不同的應(yīng)用,由獨(dú)立的團(tuán)隊負(fù)責(zé),部署在不同的服務(wù)器上;

在同一個應(yīng)用內(nèi)部,如果規(guī)模龐大業(yè)務(wù)負(fù)責(zé),會繼續(xù)進(jìn)行分割,比如說購物業(yè)務(wù),可以分割為機(jī)票酒店業(yè)務(wù)、3C業(yè)務(wù)、小商品業(yè)務(wù)等更細(xì)小的粒度。

分布式

對于大型網(wǎng)站, 分層和分割的主要目的是為了切分后的模塊便于分布式部署 。


利用分布式解決網(wǎng)站高并發(fā)的問題的同時,會帶來其他問題:

分布式意味著服務(wù)調(diào)用必須通過網(wǎng)絡(luò),這可能對性能造成比較嚴(yán)重的影響;

常用的分布式方案有以下幾種:

分布式應(yīng)用和服務(wù):將分層和分割后的應(yīng)用和服務(wù)模塊分布式部署,使不同應(yīng)用復(fù)用共同的服務(wù),便于業(yè)務(wù)功能擴(kuò)展。

分布式靜態(tài)資源:網(wǎng)站的靜態(tài)資源如js、css、圖片等獨(dú)立分布式部署,并采用獨(dú)立的域名。減輕應(yīng)用服務(wù)器的負(fù)載壓力,并通過獨(dú)立域名加快瀏覽器并發(fā)加載速度。

分布式數(shù)據(jù)和存儲:數(shù)據(jù)量過大,一臺機(jī)器無法存儲。

分布式計算:后臺業(yè)務(wù)需要處理,包括搜索引擎的索引構(gòu)建、數(shù)據(jù)倉庫的數(shù)據(jù)分析統(tǒng)計。通過Hadoop及MapReduce分布式計算框架進(jìn)行批處理計算

集群

使用分布式已經(jīng)將切分后的模塊獨(dú)立部署,但是 對于用戶訪問集中的模塊,還需要將獨(dú)立部署的服務(wù)器集群化 ,多臺服務(wù)器部署相同應(yīng)用構(gòu)成一個集群,通過負(fù)載均衡設(shè)備共同對外提供服務(wù)。

即使是訪問量很小的分布式應(yīng)用和服務(wù),也會部署兩臺服務(wù)器構(gòu)成一個小的集群,目的就是 提高系統(tǒng)的可用性 。
免費(fèi)查詢商標(biāo)注冊