• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 311, comments - 0, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            (搬運工)實現基于DNS的負載均衡

            Posted on 2011-01-19 20:24 點點滴滴 閱讀(629) 評論(0)  編輯 收藏 引用 所屬分類: 10 服務器

            如果你有一個很受歡迎的Web站點,你會發現當請求的連接數增加時,服務器的響應延時也會隨之增加。雖然你可以增加RAM、升級處理器、使用更快的驅動器及總線,這在短期內會有一定的幫助,但最終會發現一臺服務器無法完成需要的任務。
             
            使用多臺服務器平衡負載是一個不錯的想法,你可以在你的服務器池中隨意增加多臺服務器來提高服務器的性能和增強網絡的穩定性。如果你的服務器池中有多臺服務器,當一臺down機后,其他服務器可以接替它的工作,繼續提供服務而不至于造成服務中斷。
             
            通過使用RR-DNS(Round-Robin Domain Name System)可以實現平衡負載的功能,向一個主機名發出的入站請求可以被轉發到多個IP地址上。
             

             
            在BIND9中實現此功能就向添加一條A記錄那么簡單。舉例說,如果我們向somode.com區域文件中加入下面行便可實現:
            www       60     IN     A       220.181.11.124
                      60     IN     A       220.181.11.125
             
            當然你還可以根據需要加入更多服務器。這樣如果有人請求解析[url]www.somode.com[/url]時將有一半的機率解析到220.181.11.124上,而另一半會解析到220.181.11.125上。
             
            然而,使用RR-DNS方法實現負載平衡也會帶來一些問題:
            第一,域名服務器是一個分布式系統,是按照一定的層次結構組織的。當用戶將域名解析請求提交給本地的域名服務器,它會因不能直接解析而向上一級域名服務器提交,上一級域名服務器再依次向上提交,直到RR-DNS 域名服務器把這個域名解析到其中一臺服務器的IP 地址。可見,從用戶到RR-DNS 間存在多臺域名服務器,而它們都會緩沖已解析的名字到IP 地址的映射,這會導致該域名服務器組下所有用戶都會訪問同一Web 服務器,出現不同Web 服務器間的負載不平衡。為了保證在域名服務器中域名到IP 地址的映射不被長久緩沖,RR-DNS 在域名到IP 地址的映射上設置一個TTL(Time To Live)值,過了這一段時間,域名服務器將這個映射從緩沖中淘汰。當用戶請求,它會再向上一級域名服務器提交請求并進行重新映射。這就涉及到如何設置這個TTL值,若這個值太大,在這個TTL 期間,很多請求會被映射到同一臺Web 服務器上,同樣會導致負載不平衡。若這個值太小,例如是0,會導致本地域名服務器頻繁地向RR-DNS提交請求,增加了域名解析的網絡流量,同樣會使RR-DNS 成為系統中一個新的瓶頸。
             
            第二,用戶機器會緩沖從名字到IP 地址的映射,而不受TTL 值的影響,用戶的訪問請求會被送到同一臺Web 服務器上。由于用戶訪問請求的突發性和訪問方式不同,例如有的人訪問一下就離開了,而有的人訪問可長達幾個小時,所以各臺服務器間的負載仍存在傾斜(Skew)而不能控制。假設用戶在每個會話中平均請求數為20,負載最大的服務器獲得的請求數額高于各服務器平均請求數的平均比率超過百分之三十。也就是說,當TTL 值為0 時,因為用戶訪問的突發性也會存在著較嚴重的負載不平衡。
             
            第三,系統的可靠性和可維護性不好。若一臺服務器失效,會導致將域名解析到該服務器的用戶看到服務中斷,即使用戶按“Reload”按鈕,也無濟于事。系統管理員也不能隨時地將一臺服務器切出服務進行維護,如進行操作系統和應用軟件升級,這需要修改RR-DNS 服務器中的IP 地址列表,把該服務器的IP 地址從中劃掉,然后等上一段時間,等所有域名服務器將該域名到這臺服務器的映射淘汰,和所有映射到這臺服務器的客戶機不再使用該站點為止。
             
            RR-DNS方法只是一個簡單的負載平衡方案,如果你有更高要求,可以研究LVS集群(IPVS和KTCPVS、TCPHA),實現基于IP的負載均衡和基于內容的負載均衡。

            亚洲综合精品香蕉久久网| 久久成人精品| 99久久99久久| 色婷婷狠狠久久综合五月| 人妻少妇久久中文字幕一区二区| 91精品国产91久久综合| 日韩一区二区三区视频久久| 99国产欧美精品久久久蜜芽 | 伊人久久大香线蕉无码麻豆| 麻豆AV一区二区三区久久| 久久精品国产99久久丝袜| 欧美熟妇另类久久久久久不卡| 久久精品?ⅴ无码中文字幕| 久久九九精品99国产精品| 中文字幕无码久久精品青草| 18岁日韩内射颜射午夜久久成人| 国产成人久久精品一区二区三区| 久久青青国产| 一级做a爰片久久毛片16| 狠狠色丁香久久婷婷综合五月| 色综合久久夜色精品国产| 久久93精品国产91久久综合| 色综合久久中文综合网| www性久久久com| 欧美一区二区三区久久综| 亚洲欧美伊人久久综合一区二区| 7777精品伊人久久久大香线蕉| 久久久久久一区国产精品| 久久中文精品无码中文字幕| 国产精品欧美亚洲韩国日本久久 | 欧美午夜精品久久久久免费视| 久久久国产亚洲精品| 亚洲人AV永久一区二区三区久久| 欧美一级久久久久久久大| 午夜精品久久久久久影视777| 久久久精品无码专区不卡| 美女久久久久久| 中文字幕精品久久久久人妻| 精品人妻伦九区久久AAA片69| 日韩久久久久久中文人妻| 99久久精品影院老鸭窝|