首頁  >  問答  >  主體

nginx - 負載平衡問題

請教nginx/zookeeper負載平衡功能有哪些異同?

我想大声告诉你我想大声告诉你2713 天前669

全部回覆(1)我來回復

  • phpcn_u1582

    phpcn_u15822017-05-16 17:23:15

    Zookeeper 分散式服務框架是Apache Hadoop 的一個子項目,它主要是用來解決分散式應用中經常遇到的一些資料管理問題,例如:統一命名服務、狀態同步服務、叢集管理、分散式應用程式配置項的管理等。

    1. zookeeper是一個精簡的檔案系統。這點它和hadoop有點像,但是zookeeper這個檔案系統是管理小檔案的,而hadoop是管理超大檔案的。

    2. zookeeper提供了豐富的“構件”,這些構件可以實現許多協調資料結構和協定的操作。例如:分散式佇列、分散式鎖以及一組同級節點的「領導者選舉」演算法。

    3. zookeeper是高可用的,它本身的穩定性是相當之好,分散式叢集完全可以依賴zookeeper叢集的管理,利用4. zookeeper避免分散式系統的單點故障的問題。

    4. zookeeper採用了鬆散耦合的交互模式。這點在zookeeper提供分散式鎖上表現最為明顯,zookeeper可以被用作一個約會機制,讓參入的進程不在了解其他進程的(或網絡)的情況下能夠彼此發現並進行交互,參入的各方甚至不必同時存在,只要在zookeeper留下一條訊息,在該進程結束後,另外一個進程還可以讀取這條訊息,從而解耦了各個節點之間的關係。

    5. zookeeper為叢集提供了一個共享儲存庫,叢集可以從這裡集中讀寫共享的信息,避免了每個節點的共享操作編程,減輕了分散式系統的開發難度。

    6. zookeeper的設計採用的是觀察者的設計模式,zookeeper主要是負責儲存和管理大家關心的數據,然後接受觀察者的註冊,一旦這些數據的狀態發生變化,Zookeeper 就將負責通知已經在Zookeeper 上那些註冊的觀察者做出相應的反應,從而實現集群中類似Master/Slave 管理模式。
        由此可見zookeeper很利於分散式系統開發,它能讓分散式系統更加健壯和高效。

     Nginx採用的是反向代理技術,代理伺服器來接受internet上的連接請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果傳回給internet上請求連接的客戶端,此時代理伺服器對外就表現為一個伺服器。反向代理負載平衡技術是將來自internet上的連接請求以反向代理的方式動態地轉發給內部網路上的多台伺服器進行處理,從而達到負載平衡的目的。是一個高效能的 HTTP 和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。 可以說Nginx 是目前使用最廣泛的HTTP軟負載平衡器

    回覆
    0
  • 取消回覆