[英]Load balancer vs Service discovery?
希望每個人都做得很好。
有一個問題困擾着我很多。 根據我的理解,我們使用服務發現來消除記住微服務的 URL 和端口號的需要。 就像如果我們有 10 個相同微服務的實例,那么我們只是通過服務發現僅通過名稱訪問它們。 而且它已經負載平衡了。 正確的?
但后來負載均衡器出現了。 根據我的理解,我們又在做同樣的事情,對吧?
我們正在使用負載均衡器再次消除記住微服務的 URL 和端口的需要,對吧?
那么我的問題是,使負載均衡器成為負載均衡器和使服務發現成為服務發現的根本區別是什么?
請原諒我的錯誤。 這可能是我的誤解。 但是,如果您能提供幫助,那就太好了。
很棒的思路,我建議通過問答來深入了解:)
讓我選擇一個問題:“我們正在使用負載均衡器再次消除記住微服務的 URL 和端口的需要,對嗎?”
那么客戶端如何知道負載均衡器的地址呢? 生產和測試階段會有所不同; 在區域化的世界中,它可能(或可能不)在不同地區有所不同。
下一個維度是服務本身的架構。 沒有給出每個獨立節點都知道如何向服務發現注冊自己。 在一個負載均衡器后面運行多個節點是完全可以的——在這種情況下,整個服務看起來就像一個面向整個世界的單一盒子。 客戶端仍然需要發現負載均衡器。
ps 每個服務節點獨立注冊自己到服務發現和客戶端發現並隨機連接到那些的想法 - 這個概念通常稱為“服務網格” - 一個中間件來完成所有發現,路由,故障檢測等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.