<ruby id="h6500"><table id="h6500"></table></ruby>
    1. <ruby id="h6500"><video id="h6500"></video></ruby>
          1. <progress id="h6500"><u id="h6500"><form id="h6500"></form></u></progress>

            你知道大型網(wǎng)站是如何做負載均衡的嗎:大型網(wǎng)站負載均衡解決方法

            發(fā)表于:2014-06-26來(lái)源:未知作者:未知點(diǎn)擊數: 標簽:負載均衡
            負載均衡是一個(gè)大型網(wǎng)站發(fā)展必須解決的問(wèn)題,目前公司的網(wǎng)站就面臨這樣的問(wèn)題。在國內,已經(jīng)有 新浪博客、新浪播客、網(wǎng)易新聞、六間房、56.com、Discuz!、水木社區、豆瓣、YUPOO、海

            負載均衡是一個(gè)大型網(wǎng)站發(fā)展必須解決的問(wèn)題,目前公司的網(wǎng)站就面臨這樣的問(wèn)題。在國內,已經(jīng)有 新浪博客、新浪播客、網(wǎng)易新聞、六間房、56.com、Discuz!、水木社區、豆瓣、YUPOO、海內、迅雷在線(xiàn) 等多家網(wǎng)站使用 Nginx 作為Web服務(wù)器或反向代理服務(wù)器。下面兩張圖介紹了實(shí)現的大概思路,分為硬實(shí)現和軟實(shí)現。

            方法一、NetScaler負載均衡交換機動(dòng)靜分離系統架構圖(硬實(shí)現)

            方法二、Nginx反向代理負載均衡器動(dòng)靜分離系統架構圖(軟實(shí)現)

            背景

            假設您已經(jīng)決定在設計或修改基礎結構層時(shí)使用群集,以便在能夠適應不斷變化的要求的同時(shí)保持良好的性能。

            問(wèn)題

            在保持可接受的性能級別的同時(shí),如何設計一個(gè)可適應負載變化的、可伸縮的基礎結構層?

            影響因素

            在設計可伸縮的基礎結構層時(shí),請考慮下列影響因素:

            •對于任何指定的應用程序來(lái)說(shuō),單獨的服務(wù)器會(huì )受到最大負載容量的限制。例如,如果單臺服務(wù)器將 Web 頁(yè)作為基于 Web 的應用程序的一部分提供給用戶(hù),而且用戶(hù)或事務(wù)負載增加并超過(guò)了服務(wù)器的限制,則應用程序性能將降至預期值以下,在最壞的情況下還會(huì )變得不可用。

            •單獨的服務(wù)器具有最大物理性能限制,包括總線(xiàn)速度、內存量、處理器數和任一服務(wù)器可以使用的外圍設備數等限制。例如,如果服務(wù)器只能容納四個(gè)處理器,則不能為了提高性能而添加第五個(gè)處理器。

            •某些應用程序對于可以使用的 CPU 數有限制。

            •服務(wù)器作為單獨的實(shí)體,在解決方案中是故障單點(diǎn)。如果只有一臺服務(wù)器負責在應用程序內傳遞組件的功能,則它的故障會(huì )導致應用程序運行失敗。

            •添加服務(wù)器會(huì )增加管理和監視服務(wù)器硬件及其關(guān)聯(lián)軟件的復雜性。

            解決方案

            將服務(wù)或應用程序 安裝到多臺服務(wù)器上,并將這些服務(wù)器配置為共享工作負荷。這種類(lèi)型的配置就是 Load-Balanced Cluster。負載平衡通過(guò)將客戶(hù)端請求分散在多臺服務(wù)器上,從而提高了基于服務(wù)器的程序(如 Web 服務(wù)器)的性能。負載平衡技術(shù)(通常稱(chēng)為"負載平衡器")可以接收傳入請求,并根據需要將它們重定向到特定主機。有負載平衡功能的主機能夠同時(shí)響應不同客 戶(hù)端請求,甚至是來(lái)自同一客戶(hù)端的多個(gè)請求。例如,Web 瀏覽器有可能從群集中的不同主機獲得單個(gè) Web 頁(yè)所包含的多個(gè)圖像。這就分散了負載,加快了處理速度,并縮短了對客戶(hù)端的響應時(shí)間。

            負載平衡器使用不同的算法控制通信流量。這些算法用于以智能方式分散負載,并/或最大限度地利用群集內的所有服務(wù)器。這些算法中的一部分示例包括:

            •循環(huán)法。循環(huán)算法將負載均衡地分配給每臺服務(wù)器,而不考慮當前的連接數或響應時(shí)間。循環(huán)法適合于群集中的服務(wù)器具有相同處理能力的情況;否則,一些服務(wù)器收到的請求可能會(huì )超過(guò)它們的處理能力,而其他服務(wù)器的處理能力則有富余。

            •加權循環(huán)法。加權循環(huán)算法適合于每臺服務(wù)器具有不同處理能力的情況。管理員將性能權值手動(dòng)分配給每臺服務(wù)器,而且按照服務(wù)器權值自動(dòng)生成調度序列。然后,系統按照循環(huán)調度序列將請求定向到不同的服務(wù)器。

            •最少連接。最少連接算法根據群集中哪臺服務(wù)器當前正在處理的連接數最少,從而將請求發(fā)送給該服務(wù)器。

            •基于負載?;谪撦d算法先判斷群集中哪臺服務(wù)器當前的負載最低,然后將請求發(fā)送給該服務(wù)器。

            此外,一些負載平衡器還具有故障檢測功能。平衡器可以跟蹤服務(wù)器或在服務(wù)器上運行的應用程序,并在出現服務(wù)器故障后停止向該服務(wù)器發(fā)送請求。圖 1 顯示負載平衡的基本組件。

            圖 1:負載平衡組件

            當負載平衡器收到來(lái)自客戶(hù)端的請求時(shí),群集組中的一臺服務(wù)器將處理該請求。每臺服務(wù)器都能夠獨立地處理請求。如果任 何服務(wù)器因出現錯誤或正在維護而不可用,其他服務(wù)器仍然可以為請求提供服務(wù)而不會(huì )受到影響。因此,服務(wù)的總體可用性比由單臺服務(wù)器處理所有請求的方案要高 得多。但是,如果在一組軟件負載平衡服務(wù)器前面使用單個(gè)物理負載平衡器或單個(gè)網(wǎng)絡(luò )交換機,將會(huì )引入另一個(gè)故障單點(diǎn)??梢允褂萌哂嘭撦d平衡設備和/或交換機 來(lái)減少這類(lèi)風(fēng)險。

            原文轉自:http://blog.sina.com.cn/s/blog_c34954a30101tkhl.html

            老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
              <ruby id="h6500"><table id="h6500"></table></ruby>
              1. <ruby id="h6500"><video id="h6500"></video></ruby>
                    1. <progress id="h6500"><u id="h6500"><form id="h6500"></form></u></progress>