web負載均衡 總結歸納所有看過的資料的理論

2021-09-26 19:45:04 字數 1049 閱讀 7389

對於http 重定向,你一定不陌生,它可以將 http 請求進行轉移,在 web 開發中我們經常會用它來完成自動跳轉,比如使用者登入成功後跳轉到相應的管理頁面。 這種重定向完全由http 定義,並且由http **和web 伺服器共同實現。很簡單,當http **(比如瀏覽器)向web伺服器請求某個url後,web 伺服器可以通過http 響應頭資訊中的location 標記來返回乙個新的url,這意味著http**需要繼續請求這個新的url ,這便完成了自動跳轉。當然,如果你自己寫了乙個 http **,也可以不支援重定向,也就是對於web 伺服器返回的location 標記視而不見,雖然這可能不符合http 標準,但這完全取決於你的應用需要。 也正是因為http 重定向具備了請求轉移和自動跳轉的本領,所以除了滿足應用程式需要的各種自動跳轉之外,它還可以用於實現負載均衡,以達到web 擴充套件的目的。

我們知道,dns負責提供網域名稱解析服務,當我們訪問某個站點時,實際上首先需要通過該站點網域名稱的dns伺服器來獲取網域名稱指向的ip 位址,在這一過程中,dns伺服器完成了網域名稱到ip 位址的對映,同樣,這種對映也可以是一對多的,這時候,dns 伺服器便充當了負載均衡排程器(也稱均衡器),它就像前面提到的重定向轉移策略一樣,將使用者的請求分散到多台伺服器上,但是它的實現機制完全不同。

反向**伺服器的核心工作便是** http 請求,因此它工作在 http 層面,也就是 tcp 七層結構中的應用層(第七層),所以基於反向**的負載均衡也稱為七層負載均衡,實現它並不困難,目前幾乎所有主流的 web 伺服器都熱衷於支援基於反向**的負載均衡,隨後我們將進行nginx反向**負載均衡的實驗

事實上,在資料鏈路層(第二層)、網路層(第三層)以及傳輸層(四層)都可以實現不同機制的負載均衡,但有所不同的是,這些負載均衡排程器的工作必須由linux 核心來完成,因為我們希望網路資料報在從核心緩衝區進入程序使用者位址空間之前,盡早地被**到其他實際伺服器上,沒錯,linux 核心當然可以辦得到,位於核心的netfilter和ipvs可以解決問題,而使用者空間的應用程式對此卻束手無策。 另一方面,也正是因為可以將排程器工作在應用層以下,這些負載均衡系統可以支援更多的網路服務協議,比如ftp 、smtp 、dns ,以及流**和vo i p 等應用。

實現WEB負載均衡群集

具體步驟如下 一 director配置 二 real server 配置 1 編輯網路介面 root cluser1 root vi etc sysconfig network scripts ifcfg eth0 device eth0 bootproto static broadcast 192...

WEB集群與負載均衡

負載均衡的作用是在多個節點之間按照一定的策略 演算法 分發網路或計算處理負載。負載均衡可以採用軟體和硬體來實現。一般的框架結構可以參考下圖。後台的多個web節點上面有相同的web應用,使用者的訪問請求首先進入負載均衡分配節點 可能是軟體或者硬體 由它根據負載均衡策略 演算法 合理地分配給 某個web...

負載均衡方案總結

所有的例子都通過訪問www.ctrip.com為例。這裡只講方案,具體的ngix lvs haproxy怎麼工作的等以後細看了再總結。使用者通過網域名稱解析,得到ip位址114.100.80.100,訪問這台伺服器,這台機器收到請求之後,因為它是知道伺服器集群裡的ip的,然後返回乙個重定向到114....