<dfn id="1fuky"></dfn>
  • <menuitem id="1fuky"></menuitem>
    • <dfn id="1fuky"><var id="1fuky"></var></dfn>
      聯(lián)系我們
      15608181518??? 18683438262
      歡迎進(jìn)入德天信科技(服務(wù)區(qū)域:貴陽、成都、重慶)
      網(wǎng)站/微信/小程序/APP
      1500+客戶一致的選擇
      大型網(wǎng)站建設(shè)可伸縮性架構(gòu)設(shè)計(jì)
      日期:2019-05-09 09:11:16

      可伸縮性架構(gòu)指的是:不改變網(wǎng)站的軟硬件設(shè)計(jì),只通過改變部署的服務(wù)器數(shù)量就可以擴(kuò)大或縮小網(wǎng)站的服務(wù)處理能力。

      微信圖片_20190509090925.png

      大型網(wǎng)站都是從小型網(wǎng)站(一臺(tái)廉價(jià)的 PC 服務(wù)器)開啟自己的大型系統(tǒng)演化之路的。在這一過程中,最重要的技術(shù)手段就是使用服務(wù)器集群,通過不斷地向集群中添加服務(wù)器來增強(qiáng)整個(gè)集群的處理能力。只要在技術(shù)上能夠向集群中加入的服務(wù)器數(shù)量與集群的處理能力成線性關(guān)系,那么就可以利用這一手段不斷提升自己的網(wǎng)站規(guī)模,這就是系統(tǒng)的伸縮性架構(gòu)。

      演化過程從總體上來說是漸進(jìn)式的,網(wǎng)站的規(guī)模和服務(wù)器的規(guī)??偸窃诓粩嗟?cái)U(kuò)大,即總是在 “伸”。但也有可能因?yàn)檫\(yùn)營的需要(促銷活動(dòng)),在某個(gè)短時(shí)間內(nèi),網(wǎng)站的訪問量和交易規(guī)模突然爆發(fā)式增長,然后又回歸正常狀態(tài)。這就需要網(wǎng)站的技術(shù)架構(gòu)具有極好的伸縮性——在活動(dòng)期間向服務(wù)器集群中加入更多的服務(wù)器以滿足用戶的訪問,活動(dòng)結(jié)束后再將這些服務(wù)器下線,以節(jié)約成本。


      1 設(shè)計(jì)伸縮性架構(gòu)

      網(wǎng)站架構(gòu)發(fā)展史其實(shí)就是一部不斷向網(wǎng)站添加服務(wù)器的歷史。

      伸縮性架構(gòu)分為兩種:


      * 根據(jù)功能進(jìn)行物理分離 - 不同服務(wù)器部署不同的服務(wù)。


      * 單一功能通過集群實(shí)現(xiàn) - 集群內(nèi)的多臺(tái)服務(wù)器部署相同的服務(wù),提供相同的功能。

       根據(jù)功能進(jìn)行物理分網(wǎng)站發(fā)展早期,總是從現(xiàn)有的服務(wù)器中分離出部分功能與服務(wù)的:每次分離都會(huì)有更多的服務(wù)器加入,這些新增的服務(wù)器被用于處理某種特定的服務(wù)。這種伸縮性手段可以用于網(wǎng)站發(fā)展的任何階段,它可以分為兩種情況:縱向分離與橫向分離。



      縱向分離(分層后分離):是將業(yè)務(wù)流程上的不同層進(jìn)行分離部署。


      橫向分離(業(yè)務(wù)分割后的分離):把不同的業(yè)務(wù)模塊分離部署。橫向分離的粒度可以很小,比如一個(gè)關(guān)鍵網(wǎng)頁可以獨(dú)立部署為一個(gè)服務(wù),專門部署。

      單一功能集群部署


      在 “根據(jù)功能進(jìn)行物理分離” 的模式下,隨著網(wǎng)站訪問量的增長,即使是分離到最小粒度的獨(dú)立部署也可能無法滿足業(yè)務(wù)規(guī)模的需要。這時(shí)就必須使用集群,即把相同的服務(wù)部署在多臺(tái)服務(wù)器構(gòu)成的集群上,實(shí)現(xiàn)整體對(duì)外服務(wù)。

      微信圖片_20190509091059.png

      當(dāng)一頭牛拉不動(dòng)車時(shí),不是去尋找一頭更強(qiáng)壯的牛,而是用兩頭牛來拉車。一個(gè)服務(wù)的集群規(guī)模,需要同時(shí)考慮可用性、性能以及關(guān)聯(lián)服務(wù)集群的影響。

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

      把應(yīng)用服務(wù)器設(shè)計(jì)為無狀態(tài)模式,這樣通過負(fù)載均衡服務(wù)器,就可以把用戶請(qǐng)求轉(zhuǎn)發(fā)到不同的應(yīng)用服務(wù)器上咯:

      負(fù)載均衡服務(wù)器能夠感知或配置集群的服務(wù)器數(shù)量,這樣就可以向新上線的服務(wù)器分發(fā)請(qǐng)求,并停止已下線的服務(wù)器,這樣就實(shí)現(xiàn)了應(yīng)用服務(wù)器集群的伸縮性。

      負(fù)載均衡技術(shù),不僅可以實(shí)現(xiàn)伸縮性,還能改善網(wǎng)站的可用性,所以是網(wǎng)站技術(shù)的殺手锏之一哦


      ?