欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?

1. 網(wǎng)站架構(gòu)的伸縮性設(shè)計

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比大箐山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式大箐山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋大箐山地區(qū)。費用合理售后完善,10年實體公司更值得信賴。

1.1. 不同功能進行物理分離實現(xiàn)伸縮

縱向分離(分層后分離):將業(yè)務(wù)處理流程上的不同部分分離部署,實現(xiàn)系統(tǒng)伸縮性。

橫向分離(業(yè)務(wù)分割后分離):將不同的業(yè)務(wù)模塊分離部署,實現(xiàn)系統(tǒng)伸縮性。

1.2. 單一功能通過集群規(guī)模實現(xiàn)伸縮

將不同功能分離部署可以實現(xiàn)一定程度的伸縮性,但是隨著網(wǎng)站的訪問量逐步增加,即使分離到最小粒度的獨立部署,單一的服務(wù)器也不能滿足業(yè)務(wù)規(guī)模的要求。因此必須使用服務(wù)器集群,即將相同服務(wù)部署在多態(tài)服務(wù)器上構(gòu)成一個集群整體對外提供服務(wù)。

2. 應(yīng)用服務(wù)器集群的伸縮性設(shè)計

2.1. HTTP 重定向負載均衡

大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?

利用 HTTP 重定向協(xié)議實現(xiàn)負載均衡。

這種負載均衡方案的優(yōu)點是比較簡單。缺點是瀏覽器需要兩次請求服務(wù)器才能完成一次訪問,性能較差:重定向服務(wù)器自身的處理能力有可能成為瓶頸,整個集群的伸縮性規(guī)模有限;使用 HTTP 302 響應(yīng)碼重定向,可能使搜索引擎判斷為 SEO 作弊,降低搜索排名。

2.2. DNS 域名解析負載均衡

大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?

利用 DNS 處理域名解析請求的同時進行負載均衡處理的一種方案。

在 DNS 服務(wù)器中配置多個 A 記錄,如:

114.100.40.1 www.mysite.com114.100.40.2 www.mysite.com114.100.40.3 www.mysite.com

每次域名解析請求都會根據(jù)負載均衡算法計算一個不同的 IP 地址返回,這樣 A 記錄中配置的多個服務(wù)器就構(gòu)成一個集群,并可以實現(xiàn)負載均衡。

DNS 域名解析負載均衡的優(yōu)點:

  • 將負載均衡的工作轉(zhuǎn)交給了 DNS,省掉了網(wǎng)站管理維護的麻煩。
  • 同時,許多 DNS 服務(wù)器還支持基于地理位置的域名解析,即將域名解析成距離用戶地理最近的一個服務(wù)器地址,這樣可以加快用戶訪問速度,改善性能。

DNS 域名解析負載均衡的缺點:

  • DNS 是多級解析,每一級 DNS 都可能緩存 A 記錄,當某臺服務(wù)器下線后,即使修改了 DNS 的 A 記錄,要使其生效也需要較長時間。這段時間,依然會域名解析到已經(jīng)下線的服務(wù)器,導(dǎo)致用戶訪問失敗。
  • DNS 的負載均衡的控制權(quán)在域名服務(wù)商那里,網(wǎng)站無法對其做更多改善和更強大的管理。

2.3. 反向代理負載均衡

大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?

大多數(shù)反向代理服務(wù)器同時提供反向代理和負載均衡的功能。

反向代理服務(wù)器的優(yōu)點是部署簡單。缺點是反向代理服務(wù)器時所有請求和響應(yīng)的中轉(zhuǎn)站,其性能可能會成為瓶頸。

2.4. IP 負載均衡

大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?

在網(wǎng)絡(luò)層通過修改請求目標地址進行負載均衡。負載均衡服務(wù)器(網(wǎng)關(guān)服務(wù)器)在操作系統(tǒng)內(nèi)核獲取網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)負載均衡算法計算得到一臺真實 Web 服務(wù)器 10.0.0.1,然后將目的 IP 地址修改為 10.0.0.1,不需要通過用戶進程。真實 Web 服務(wù)器處理完成后,響應(yīng)數(shù)據(jù)包回到負載均衡服務(wù)器,負載均衡服務(wù)器再將數(shù)據(jù)包原地址修改為自身的 IP 地址(114.100.80.10)發(fā)送給瀏覽器。

IP 負載均衡在內(nèi)核完成數(shù)據(jù)分發(fā),所以處理性能優(yōu)于反向代理負載均衡。但是因為所有請求響應(yīng)都要經(jīng)過負載均衡服務(wù)器,集群的最大響應(yīng)數(shù)據(jù)吞吐量受制于負載均衡服務(wù)器網(wǎng)卡帶寬。

2.5. 數(shù)據(jù)鏈路層負載均衡

大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?

數(shù)據(jù)鏈路層負載均衡是指在通信協(xié)議的數(shù)據(jù)鏈路層修改 mac 地址進行負載均衡。

這種方式又稱作三角傳輸方式,負載均衡數(shù)據(jù)分發(fā)過程中不修改 IP 地址,只修改目的 mac 地址,通過配置真實物理服務(wù)器集群所有機器虛擬 IP 和負載均衡服務(wù)器 IP 地址一致,從而達到不修改數(shù)據(jù)包的源地址和目的地址就可以進行數(shù)據(jù)分發(fā)的目的,由于實際處理請求的真實物理服務(wù)器 IP 和數(shù)據(jù)請求目的 IP 一致,不需要通過負載均衡服務(wù)器進行地址轉(zhuǎn)換,可將響應(yīng)數(shù)據(jù)包直接返回給用戶瀏覽器,避免負載均衡服務(wù)器網(wǎng)卡帶寬成為瓶頸。這種負載方式又稱作直接路由方式。

在 Linux 平臺上最好的鏈路層負載均衡開源產(chǎn)品是 LVS(Linux Virtual Server)。

2.6. 負載均衡算法

負載均衡服務(wù)器的實現(xiàn)可以分為兩個部分:

  1. 根據(jù)負載均衡算法和 Web 服務(wù)器列表計算得到集群中一臺 Web 服務(wù)器的地址。
  2. 將請求數(shù)據(jù)發(fā)送到該地址對應(yīng)的 Web 服務(wù)器上。

負載均衡算法通常有以下幾種:

  • 輪詢(Round Robin)  - 所有請求被依次分發(fā)到每臺應(yīng)用服務(wù)器上,即每臺服務(wù)器需要處理的請求數(shù)據(jù)都相同,適合于所有服務(wù)器硬件都相同的場景。
  • 加權(quán)輪詢(Weighted Round Robin)  - 根據(jù)服務(wù)器硬件性能情況,在輪詢的基礎(chǔ)上,按照配置權(quán)重將請求分發(fā)到每個服務(wù)器,高性能服務(wù)器能分配更多請求。
  • 隨機(Random)  - 請求被隨機分配到各個應(yīng)用服務(wù)器,在許多場合下,這種方案都很簡單實用,因為好的隨機數(shù)本身就很平均,即使應(yīng)用服務(wù)器硬件配置不同,也可以使用加權(quán)隨機算法。
  • 最少連接(Least Connection)  - 記錄每個應(yīng)用服務(wù)器正在處理的連接數(shù),將新到的請求分發(fā)到最少連接的服務(wù)器上,應(yīng)該說,這是最符合負載均衡定義的算法。
  • 源地址 Hash(Source Hash)  - 根據(jù)請求來源的 IP 地址進行 Hash 計算,得到應(yīng)用服務(wù)器,這樣來自同一個 IP 地址的請求總在同一個服務(wù)器上處理,該請求的上下文信息可以存儲在這臺服務(wù)器上,在一個會話周期內(nèi)重復(fù)使用,從而實現(xiàn)會話粘滯。

3. 分布式緩存集群的伸縮性設(shè)計

一致性 HASH 算法

4. 數(shù)據(jù)存儲服務(wù)器集群的伸縮性設(shè)計

4.1. 關(guān)系型數(shù)據(jù)庫的伸縮性設(shè)計

  • 主從復(fù)制  - 主流關(guān)系型數(shù)據(jù)庫一般都支持主從復(fù)制。
  • 分庫  - 根據(jù)業(yè)務(wù)對數(shù)據(jù)庫進行分割。制約條件是跨庫的表不能進行 Join 操作。
  • 分表  - 使用數(shù)據(jù)庫分片中間件,如 Cobar 等。

4.2. NOSQL 數(shù)據(jù)庫的伸縮性設(shè)計

一般而言,Nosql 不支持 SQL 和 ACID,但是強化了對于高可用和伸縮性的支持。

網(wǎng)站標題:大型網(wǎng)站的可伸縮性架構(gòu)如何設(shè)計?
新聞來源:http://chinadenli.net/article18/gjsgdp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站制作、軟件開發(fā)、App開發(fā)、虛擬主機、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)