什麼是服務發現
當你在瀏覽器輸入 domain name,獲取網站服務的流程。
這流程中,DNS 會根據域名解析出 1 個 ip 位址,返回ip地址中對應鏈接包含的內容。我們根據特定的標誌(域名)來獲取我們所需要的服務,這就是服務發現。
而在微服務的領域,我們將應用拆分成一個個的微服務之後,服務發現,則變成了微服務之間相互獲取彼此的信息。
在微服務的場景下,使用DNS服務器作為服務發現的實現者會存在以下幾個問題
1. DNS服務器不支持動態變更,不能夠隨著服務的狀態變更(上線、下線、故障)而對域名映射變更
2. DNS只能支持域名和ip地址的一一映射,但在微服務的場景中,很多微服務都會部署多個實例,這也就要求標誌與服務要有一對多的映射
3. DNS服務無法解決多數據中心的問題
服務發現模式
服務發現主要存在有兩種模式,客戶端模式與服務端模式,兩者的本質區別在於,客戶端是否保存服務列表信息
https://blog.csdn.net/u013035373/article/details/79414529
目前成熟的服務發現應用
Reference:
https://blog.csdn.net/Mr_SeaTurtle_/article/details/77618403?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4-77618403-blog-112297667.235^v38^pc_relevant_sort_base2&spm=1001.2101.3001.4242.3&utm_relevant_index=7
No comments:
Post a Comment