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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

利用zookeeper实现分布式服务故障自动剔除/服务自动注册的思路

發布時間:2023/12/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用zookeeper实现分布式服务故障自动剔除/服务自动注册的思路 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目前常見的web常規的負載均衡大多數是通過nginx的upstream配置將流量轉發到內部的服務機上,來分擔流量過多的情況,但是這里往往出現的一個問題是,nginx上配置服務器的ip是固定的,如果某臺機器出現了服務故障,那么流量有概率會打到這臺機器導致出現服務不可訪問的故障,這時候往往需要人工介入將故障的節點ip剔除掉,那么有沒有好的辦法發現故障Ip剔除?可以利用zookeeper的特性來干這個事情的

zookeeper是什么?

Zookeeper 會維護一個具有層次關系的數據結構,它非常類似于一個標準的文件系統,目前是基于這個思路去考慮的。大體的結構圖:

具體思路

看到上面的樹狀結構大家應該想到了點上面東西了吧!那么服務自動發現具體可以這么做呢,這么利用zookeeper的這個特性去實現服務自動注冊、故障剔除的原理呢!下面都是基于golang的一些特性去講解。

1)實現一個golang版本的路由層,然后在nginx=》upstream服務器之間加一層路由服務層,這個路由服務層就是用來維護所有服務的路由表。然后再通過路由層找到相對應服務的IP,最后通過rpc協議去調用某個具體的服務器

2)實現一個golang版本的微服務,每個微服務啟動的時候往zookeeper里面去注冊自己屬于哪個路由的,這里只要實現具體的業務邏輯即可。。

下面是一個整體的架構與微服務之間的表現:

zookeeper的樹狀結構:

總結

以上是生活随笔為你收集整理的利用zookeeper实现分布式服务故障自动剔除/服务自动注册的思路的全部內容,希望文章能夠幫你解決所遇到的問題。

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