日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微服务中为什么需要服务发现?

發布時間:2024/9/16 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微服务中为什么需要服务发现? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最簡單的情況下:只有A,B兩個服務,他們都有自己的IP地址,如果A調用B,那么需要在A中配置B的地址就可以了。

但是如果B的服務有多個,如下圖:

在分布式系統中,多個自治的B并不共享主內存。因此B的服務不僅多,而且會根據具體情況動態變化。因此數量也是不固定的。例如在流量小的時候B的數量會變小,當大流量時B的數量可以增多。因此在A中的配置寫B的IP是不現實的。
這時就需要注冊中心了,B在啟動時就會把自己的信息上報到注冊中心,如下所示:

這時如果A要調用B就需要從注冊中心獲取B的信息。

A如何向注冊中心拿到B的信息?

方法一:客戶端發現

A直接找注冊中心,注冊中心把B的所有信息都發送給A,這時A只需要選擇一個B的地址就可以了。可以通過某種機制來選擇,比如輪訓、hash、隨機等機制來從眾多的B地址中選擇一個。這種方式就是客戶端發現,這是由A發起的。
常用的有:Eureka

方法二:服務端發現

出現了一個新的角色----代理。代理從眾多的B地址中選一個給A。這種方式就是服務端發現
常用的有:Nginx,zookeeper,kubernetes。

客戶端發現與服務端發現的優缺點

客戶端發現的優點:簡單直接,不需要代理的介入,同時可以知道所有可以使用的服務地址。缺點是需要自己實現一套邏輯來挑選B。
服務端發現的優點:對于A來說是透明的。A服務只需要向代理發請求就可以了。

總結

以上是生活随笔為你收集整理的微服务中为什么需要服务发现?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。