1. <td id="fgbtv"><ruby id="fgbtv"></ruby></td>
  2. 速遞行業新聞

    提供多角度全方位的新聞視角

    大型網站建設可伸縮性架構設計

    時間:2019-06-07

    來源:星翼創想(www.win694.com)

    作者:李飛

        專題 :網站建設

    可伸縮性架構指的是:不改變網站的軟硬件設計,只通過改變部署的服務器數量就可以擴大或縮小網站的服務處理能力。




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




    演化過程從總體上來說是漸進式的,網站的規模和服務器的規??偸窃诓粩嗟財U大,即總是在 “伸”。但也有可能因為運營的需要(促銷活動),在某個短時間內,網站的訪問量和交易規模突然爆發式增長,然后又回歸正常狀態。這就需要網站的技術架構具有極好的伸縮性——在活動期間向服務器集群中加入更多的服務器以滿足用戶的訪問,活動結束后再將這些服務器下線,以節約成本。




    1 設計伸縮性架構




    網站架構發展史其實就是一部不斷向網站添加服務器的歷史。




    伸縮性架構分為兩種:




    * 根據功能進行物理分離 - 不同服務器部署不同的服務。




    * 單一功能通過集群實現 - 集群內的多臺服務器部署相同的服務,提供相同的功能。




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




    縱向分離(分層后分離):是將業務流程上的不同層進行分離部署。




    橫向分離(業務分割后的分離):把不同的業務模塊分離部署。橫向分離的粒度可以很小,比如一個關鍵網頁可以獨立部署為一個服務,專門部署。




    單一功能集群部署




    在 “根據功能進行物理分離” 的模式下,隨著網站訪問量的增長,即使是分離到最小粒度的獨立部署也可能無法滿足業務規模的需要。這時就必須使用集群,即把相同的服務部署在多臺服務器構成的集群上,實現整體對外服務。




    當一頭牛拉不動車時,不是去尋找一頭更強壯的牛,而是用兩頭牛來拉車。一個服務的集群規模,需要同時考慮可用性、性能以及關聯服務集群的影響。




    2 伸縮性設計之應用服務器集群




    把應用服務器設計為無狀態模式,這樣通過負載均衡服務器,就可以把用戶請求轉發到不同的應用服務器上咯:




    負載均衡服務器能夠感知或配置集群的服務器數量,這樣就可以向新上線的服務器分發請求,并停止已下線的服務器,這樣就實現了應用服務器集群的伸縮性。




    負載均衡技術,不僅可以實現伸縮性,還能改善網站的可用性,所以是網站技術的殺手锏之一哦O(∩_∩)O~

    掃碼添加微信
    159 8667 8737
    24小時電話

    人妻精品久久久久中文字幕一冢本|baoyu135国产精品|国产亚洲情侣一区二区|四虎成人精品国产永久免费无码|国产呦系列免费