精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

服務發現和負載均衡的來龍去脈

開發 前端
單機時代,傳統軟件大多是單體/巨石架構(Monolithic)。大家往一個代碼倉庫提交CODE,這會導致應用膨脹,難以理解和修改,以及擴展受限,無法按需伸縮等諸多問題。單體架構怎么解決多人合作的問題?模塊化,對,按功能拆分,模塊之間定義編程接口(API),彼此關心功能而不關心實現。

 [[322354]]

問題緣由

單機時代,傳統軟件大多是單體/巨石架構(Monolithic)。大家往一個代碼倉庫提交CODE,這會導致應用膨脹,難以理解和修改,以及擴展受限,無法按需伸縮等諸多問題。單體架構怎么解決多人合作的問題?模塊化,對,按功能拆分,模塊之間定義編程接口(API),彼此關心功能而不關心實現。

隨著時代發展,單機程序遇到了計算力和存儲的雙重瓶頸,分布式架構應運而生。單體應用通過函數名(標識)便可輕松完成本地函數調用,在分布式系統中,服務(RPC/RESTful API)承擔了類似的角色,但請求服務單靠服務名還不夠,服務名只是服務能力(服務類型)的標識,還需要指示服務位于網絡何處,而部署在云中的服務實例IP是動態分配的,擴縮容、失敗和更新則讓問題變得更加復雜,靜態配置服務實例適應不了新變化,需要更精細化的服務治理能力,為了解決或者說簡化這個問題,服務發現作為一種基礎能力被抽象和提供,它試圖讓請求網絡服務像調用本地函數一樣簡單透明。

服務即功能(函數)。只是服務跟網絡緊密聯系在一起,所有才會出現網絡服務這個名詞,服務提供者通過網絡發布服務,服務使用者通過網絡請求服務,分布式系統突破了單機算力和存儲的限制,提升了系統穩定性,使得高并發高可用的海量服務成為可能,但這也增加了軟件復雜度,引入軟件分層、負載均衡、微服務、服務發現/治理、分布式一致性等新的問題和挑戰。

服務發現

服務分服務提供者(Service Provider)和服務消費者(Service Consumer),如果要提供海量服務能力,單一的服務實例顯然是不夠的,如果要提供成千上萬種服務,則需要有一個地方記錄服務名到服務實例列表的映射,所以,有必要引入一個新的角色:服務中介,服務中介維護一個服務注冊表(Service Registry),可以把注冊表理解為服務字典,key是服務名,value是服務提供實例列表;服務注冊表是聯系服務提供者和服務消費者的橋梁,它維護服務提供者的最新網絡位置等信息,也是服務發現最核心的部分。

服務啟動的時候,把服務信息注冊(put)到服務注冊表;服務終止的時候,從服務注冊表刪除(remove)自身的服務信息。

服務消費者在請求服務的時候,先去服務注冊表按名查詢(get)服務提供者列表,然后從列表里挑選一個服務實例,向該實例請求服務。

大道至簡,這便是最簡單的服務發現模型,也是服務發現的基本原理,至此,似乎一切都OK,但其實尚有幾個問題沒有說清楚。

問題和解法

  • 第一個問題,服務如果不是正常停止,而是被系統kill掉,它便沒有機會通知服務注冊表把自身服務信息刪除,這樣注冊表便多了一條指向無效服務實例的信息,而服務消費者卻并不知情,怎么辦?解決的辦法很簡單:保活(keepalive),服務提供者定期(比如每隔10秒)給服務中介發送keepalive消息,服務中介收到keepalive消息后更新該服務實例的keepalive timestamp,服務中介定期檢查該timestamp,如果超期便把該服務實例從注冊表剔除。
  • 第二個問題,服務實例列表變化如何通知服務消費者?不外乎兩種方法,輪詢和pub-sub。輪詢是消費者主動詢問服務中介服務列表是否變化,如果有變化,則把新的服務列表發送給消費者。如果消費者過多,則服務中介處理輪詢的消息會有壓力,在服務類別很多,服務列表很大的時候,它甚至會成為瓶頸。pub-sub是服務中介主動通知服務消費者,時效性相比輪詢更好,缺點是會占用單獨的線程或者連接資源。

  • 第三個問題,服務中介如果掛了怎么辦?所以我們要解決單點的問題,通常會用集群來對抗這種脆弱性,有很多用于做服務注冊表的開源解決方案,比如etcd/zookeeper/consul,本質上使用分布式一致性數據庫來保存注冊表信息,它既解決讀寫性能問題又提高了系統穩定性可用性。
  • 第四個問題,如果服務消費者每次使用遠程服務都需要先查詢服務中介獲取實例列表,再請求服務,這樣效率太低效?對服務中介的壓力也不小?通常,客戶端會緩存服務實例列表,這樣對同名服務的多次請求,便不用重復查詢,既減少了延遲又減輕了對服務中介的訪問壓力。
  • 第五個問題,前述的keepalive有間隔,如果在這個間隔內服務實例不可用,那么服務消費者還是不能感知的,所以還是有可能把請求發送到一個無法提供服務的網絡遠端機器上去,這樣自然是沒法work。我們無法從根本上杜絕這種情況,系統需要容忍這種錯誤,但也可以做一些改進,比如向某實例請求服務失敗后便拉黑,避免向同一無效服務實例多次派發請求。
  • 第六個問題,服務消費者怎么從多個服務實例里選擇一個?如何確保同一服務消費者的多次服務請求被分配到固定的服務實例(有時候需要這樣)?這其實就是負載均衡的問題,有多種策略,比如rr、優先級、比如加權隨機、一致性哈希。

服務發現模式

服務發現主要有兩種模式:客戶端發現模式(client-side discovery)和服務端發現模式(server-side discovery)。

客戶端發現模式 

客戶端負責查詢服務實例列表并決定向哪個實例請求服務,也就是負載均衡策略在客戶端實現。該模式包括注冊和發現兩個部分。

服務實例調用服務中介的注冊接口進行實例注冊,服務實例通過keepalive做服務續期,服務中介通過健康檢查剔除不可用的服務實例。

服務消費者請求服務的時候,先向服務注冊表查詢服務實例列表,注冊表是一個服務數據庫,為了提升性能和可靠性,客戶端通常會緩存服務列表(緩存用來確保注冊表掛了之后還能繼續工作),拿到實例列表后客戶端基于負載均衡策略挑選一個實例發送服務請求。

優點

  • 直接,客戶端可以靈活的執行負載均衡策略。
  • 去中心化,非網關式,有效避開單點瓶頸和可靠性下降。
  • 服務發現直接SDK集成進客戶端,這種語言整合程度很好,程序執行性能也很好,排錯方便。

缺點

  • 客戶端與服務注冊表耦合,需要為服務客戶端使用的每種語言每種框架開發服務發現邏輯。
  • 這種侵入式的集成會導致任何服務發現的變化都需要客戶端應用程序重新編譯和部署,強綁定違背了獨立性原則。
  • 服務上下線會對調用方有影響,導致服務短暫不可用。

服務端發現模式

 

 

 

 

 

發現:服務消費者通過負載均衡器發送服務請求,負載均衡器會查詢服務注冊表,挑選一個服務實例,并將請求轉發到服務實例。

注冊:服務注冊/注銷可以跟上述客戶端發現模式一致,也可以通過部署平臺的內置服務注冊和發現機制完成,即容器化部署平臺(docker/k8s)能主動發現服務實例并幫助服務實例完成注冊注銷。

對比客戶端發現模式,使用服務端發現模式的客戶端本地不保存服務實例列表,客戶端不做負載均衡,這個負載均衡器既承擔了服務發現的角色,又承擔了網關的角色,所以經常叫API網關服務器。

因為負載均衡器是中心式的,所以它也必須是一個集群,單個實例不足以支撐高并發訪問,針對負載均衡器本身的服務發現和負載均衡通常借助DNS。

Http服務器,Nginx、Nginx Plus就是此類服務端發現模式的負載均衡器。

優點

  • 服務發現對于服務消費者是透明的,服務消費者與注冊表解耦,服務發現功能的更新對客戶端無感知。
  • 服務消費者只需要向負載均衡器發送請求,不需要為每種服務消費者的編程語言和框架,開發服務發現邏輯SDK。

缺點

  • 由于所有請求都要經負載均衡器轉發,所以負載均衡器有可能成為新的性能瓶頸。
  • 負載均衡器(服務網關)是中心式的,而中心式的架構會有穩定性的隱憂。
  • 因為負載均衡器轉發請求,所以RT會比客戶端直連模式高。

微服務和服務發現

Service Mesh服務網格是服務于微服務應用程序的可配置基礎設施層,旨在處理服務之間的大量基于網絡的進程間通信。

 

 

 

 

Service Mesh服務網關解耦調用和通信,在非mesh下,對于協議的感知和服務發現方法的感知需要應用去做,用mesh之后,就只管調用,mesh通過控制面來控制應用的數據流。

Mesh做服務發現其實是客戶端發現模式的升級版,基于sidecar和pilot實現,Sidecars,即數據面板(Data Plane),負責發現目標服務實例地址列表并轉發請求。Pilots,即控制面板(Control Plane),負責管理服務注冊表的所有服務注冊信息。

服務注冊模式

一個選擇是服務實例自注冊,即self-registration模式。另一種選擇是其它的系統組件來管理服務實例的注冊,即third-party registration模式。

自注冊模式如前面所述,它足夠簡單,不需要第三方組件,缺點是必須為服務中用到的每種編程語言與框架實現注冊代碼。

第三方注冊服務實例不會自己完成注冊注銷,它由另一個叫做Service Registrar的系統組件負責,該組件會輪詢部署環境或者跟蹤訂閱事件去感知服務實例的變化,幫助服務實例完成自動化注冊注銷。

Third-party registration模式主要的優勢在于解耦了服務和服務注冊表。不需要為每個語言和框架都實現服務注冊邏輯。服務實例注冊由一個專用的服務集中實現。缺點是除了被內置到部署環境中,它本身也是一個高可用的系統組件,需要被啟動和管理。

其他

如果某個服務對于的服務實例特別多,比如在一些頭部公司,一個服務名可能對應幾千幾萬個服務實例,這樣,服務變更的查詢和對比會很慢,IO的量會大得超過想象,通常,會用version num去解決這個問題。

 

責任編輯:華軒 來源: 碼磚雜役
相關推薦

2019-09-19 09:03:13

Docker負載均衡服務

2019-09-19 14:57:27

Docker語言技術

2019-11-29 08:05:26

連接池負載均衡互聯網架構

2023-07-04 07:45:11

gogRPC服務

2019-06-09 09:13:14

Istio負載均衡架構

2011-12-02 22:51:46

Nginx負載均衡

2010-05-10 14:35:36

TRUNK負載均衡

2010-04-21 14:54:45

負載均衡服務

2010-04-20 15:02:27

服務器負載均衡

2012-10-19 11:31:25

全局負載均衡本地負載均衡

2017-07-03 08:08:25

負載均衡分類

2010-04-28 11:35:25

集群負載均衡

2010-05-06 15:24:35

Tomcat負載均衡

2010-05-06 16:20:33

eigrp負載均衡

2010-05-06 15:04:51

Tomcat負載均衡

2019-06-19 14:58:38

服務器負載均衡客戶端

2010-05-06 17:12:20

數據中心負載均衡服務

2010-05-04 14:22:07

負載均衡服務

2010-05-10 14:02:53

服務器負載均衡

2014-10-29 09:45:51

路由器服務主機
點贊
收藏

51CTO技術棧公眾號

国产白浆在线观看| 欧美日韩色视频| 激情都市亚洲| 国产精品国产a级| 成人免费在线看片| 无码一区二区三区| 亚洲久久久久| 亚洲欧美中文日韩在线v日本| 污污网站免费看| 动漫一区二区| 国产拍揄自揄精品视频麻豆| 999国内精品视频在线| 久久精品国产成人av| 亚洲色图国产| 国产亚洲激情视频在线| 亚洲欧美综合视频| 国产极品一区| 福利二区91精品bt7086| 18视频在线观看娇喘| 青青草观看免费视频在线| 国产一区二区三区观看| 国产成人一区二区在线| 久久精品免费在线| 色欧美自拍视频| 国产视频欧美视频| av电影在线播放| 精品美女一区| 色又黄又爽网站www久久| 国产尤物av一区二区三区| 91看片在线观看| 久久综合九色综合久久久精品综合 | 亚洲影院在线看| 亚洲精品成人在线视频| 亚洲激情网址| 欧美肥臀大乳一区二区免费视频| 久久久免费看片| 女厕嘘嘘一区二区在线播放 | 国产啪精品视频网站| 日本高清www免费视频| 午夜欧美视频| 久久久精品在线观看| 久久午夜精品视频| 国产欧美日韩精品一区二区免费| 亚洲黄页网在线观看| 亚洲精品久久久久久| 亚洲狼人综合| 3d动漫精品啪啪1区2区免费| 亚洲这里只有精品| 国产一区二区主播在线| 日本高清不卡视频| 黄色a级片免费| 涩涩涩在线视频| 日韩欧美在线免费| 国产l精品国产亚洲区久久| 偷拍自拍在线看| 精品福利免费观看| 色综合久久久久无码专区| xxxx成人| 欧美日韩中文字幕综合视频| 激情深爱综合网| 国产精品一二三产区| 亚洲超碰精品一区二区| 成人一级生活片| 久草在线视频网站| 亚洲aⅴ怡春院| 日韩av在线第一页| 欧美magnet| 欧美在线观看视频一区二区| 狠狠躁狠狠躁视频专区| 亚州精品国产| 91精品国产福利| 91精品人妻一区二区三区蜜桃2| 136福利精品导航| 亚洲国产成人一区| 国产男女猛烈无遮挡a片漫画| 色综合久久中文| 国产亚洲欧洲高清| 免费成人美女女在线观看| 亚洲欧洲美洲一区二区三区| 欧美第一淫aaasss性| 91在线看视频| 蜜桃视频在线一区| 91精品啪在线观看麻豆免费| 粉嫩av一区二区夜夜嗨| 96av麻豆蜜桃一区二区| 无遮挡亚洲一区| av片在线观看| 色偷偷一区二区三区| 国产欧美精品一二三| youjizzjizz亚洲| 亚洲人成在线播放| 182在线观看视频| 亚洲电影在线| 国产免费成人av| 丰满肥臀噗嗤啊x99av| 久久久久久久久久久黄色| 欧美一级免费在线观看| 波多野结衣视频一区二区| 欧美色区777第一页| www.四虎在线| 成人激情免费视频| 久久久久久国产精品久久| 国产精华7777777| 国产成人免费视频精品含羞草妖精| 久久精彩视频| 91网址在线观看| 在线视频你懂得一区二区三区| 涩多多在线观看| 伊人成综合网伊人222| 欧美日本中文字幕| 中文字幕第99页| 99久久婷婷国产综合精品 | www.av欧美| 国模一区二区三区| 国产精品专区一| 青青草在线播放| 亚洲图片一区二区| 日本中文字幕二区| 国产探花一区| 97久久精品人搡人人玩| 国产高清在线观看视频| 国产日韩精品一区二区浪潮av| 免费人成自慰网站| 欧美日韩视频免费看| 亚洲视频在线免费观看| 日韩伦理在线视频| 国产传媒一区在线| 一区二区日本伦理| 91国内外精品自在线播放| 日韩成人在线视频网站| 久久久久成人网站| 激情综合色丁香一区二区| 色阁综合av| 性欧美超级视频| 日韩久久午夜影院| 一级片中文字幕| 不卡一区二区在线| 日本熟妇人妻xxxx| 99精品国产一区二区三区2021| 久久久av网站| 国产精品无码免费播放| 国产精品久久二区二区| 中文字幕第38页| 成人羞羞在线观看网站| 国产精品女主播| 国产精品久久一区二区三区不卡 | 另类小说色综合| 国内精品伊人久久久| 国产99久久精品一区二区| 日本不卡免费播放| 91国偷自产一区二区开放时间| 亚洲一区二区乱码| 国产精品一二| 日韩av大全| 国产精品原创视频| 久久韩国免费视频| 国产成人精品亚洲精品色欲| 亚洲精品免费在线| 国产伦理在线观看| 亚洲毛片av| 鲁鲁视频www一区二区| 三级成人黄色影院| 在线日韩中文字幕| 国产精品欧美亚洲| 一区二区国产视频| 日韩成人av一区二区| 蜜桃伊人久久| 午夜精品短视频| 国产精品亚洲综合在线观看 | 日本免费一区二区三区等视频| 日韩在线观看网站| 国产又黄又大又爽| 一个色综合av| 久久丫精品国产亚洲av不卡| 日韩**一区毛片| 艳母动漫在线观看| 136国产福利精品导航网址应用| 国产91|九色| av在线播放免费| 日韩一区二区免费在线电影| 国产精品7777777| 亚洲国产精品ⅴa在线观看| 最新av免费在线观看| 一区精品久久| 亚洲精品日韩成人| 中文字幕av一区二区三区四区| 欧美亚洲第一页| 毛片av在线| 亚洲国产高清福利视频| 伊人成人在线观看| 亚洲一二三四区不卡| 亚洲成人黄色av| 国产精品一级二级三级| 国产成人a亚洲精v品无码| 婷婷综合网站| 久久精品国产精品国产精品污 | 高清电影在线免费观看| 在线不卡国产精品| 天天干视频在线| 欧美高清性hdvideosex| www欧美在线| 亚洲精品第一国产综合野| 日韩在线免费观看av| 国产黄色成人av| 无需播放器的av| 日韩亚洲精品在线| 熟妇熟女乱妇乱女网站| 亚洲婷婷丁香| 国产亚洲福利社区| 亚洲日本中文| 国产精品扒开腿做爽爽爽男男 | 亚洲国产日本| 中文字幕一区二区三区四区五区| 欧美亚洲色图校园春色| 91偷拍精品一区二区三区| 精品免费av在线| 78色国产精品| 久久99亚洲网美利坚合众国| xxxxx成人.com| 成人免费黄色网页| 日韩精品在线私人| 日韩在线视频免费| 欧美一级片免费看| 国产精品久久婷婷| 欧美色男人天堂| 久草热在线观看| 日韩欧美视频一区二区三区| 一区二区三区免费高清视频 | 中文综合在线观看| 免费一级在线观看播放网址| 亚洲国产精品一区二区久| 国产黄a三级三级看三级| 欧美精品tushy高清| 五月激情丁香网| 在线一区二区视频| 国产成人无码一区二区在线播放| 精品成人久久av| 全部毛片永久免费看| 午夜电影网亚洲视频| 日韩三级av在线| 午夜一区二区三区在线观看| 久久久久亚洲av无码专区| 樱花影视一区二区| 国产精品老熟女一区二区| 亚洲精品欧美激情| 日韩在线观看视频一区二区| 亚洲人成人一区二区在线观看 | 狠狠色香婷婷久久亚洲精品| 国产区在线观看视频| 欧美日韩一区免费| 国产精品久久久久久久久久久久久久久久久 | 国产精品视频一区二区三区| 成人免费直播live| 精品精品视频| 国产无套精品一区二区| 神马午夜久久| 亚洲精品成人自拍| 久久久久亚洲| www.亚洲视频.com| 国产亚洲在线| 国产精品少妇在线视频| 奇米精品一区二区三区在线观看| 国产精品区在线| 国产一区在线观看视频| 中文字幕天堂av| 久久亚洲一区二区三区明星换脸| www色com| 亚洲免费av观看| 日韩成人免费在线观看| 色婷婷久久99综合精品jk白丝| 中文字幕一区二区三区波野结 | 毛片在线播放网站| 久久精品福利视频| 免费在线观看av电影| 欧美一区第一页| 黄色成人在线观看网站| aaa级精品久久久国产片| 欧美1区二区| 亚洲午夜精品久久久久久浪潮| 一区二区三区在线电影| 国产精品国产亚洲精品看不卡| 噜噜噜躁狠狠躁狠狠精品视频| 一级做a免费视频| 成人丝袜高跟foot| 91精品国自产在线| 亚洲成人你懂的| 欧美在线视频精品| 精品国产乱码久久久久久免费| 你懂的在线观看| 欧美久久精品一级黑人c片| 欧美激情护士| 亚洲自拍偷拍视频| 亚洲人成亚洲精品| 成年丰满熟妇午夜免费视频| 久久美女性网| 激情综合激情五月| 国产精品嫩草久久久久| 国产在线观看成人| 欧美日韩激情在线| 香蕉久久一区二区三区| 久久九九国产精品怡红院 | 国产伦精品一区二区三区照片91 | aa在线观看视频| 精品一区二区免费| 四虎永久免费影院| 亚洲黄色性网站| 精品乱码一区内射人妻无码| 亚洲成人黄色网| av毛片在线播放| 国产精品久久激情| 欧美一性一交| 日本人妻伦在线中文字幕| 日韩电影免费在线| 丰满少妇在线观看资源站| 亚洲精品欧美在线| 国产又黄又粗又长| 色噜噜狠狠色综合网图区| 水蜜桃在线视频| 国产日韩欧美一区二区| 97偷自拍亚洲综合二区| 欧美一级黄色片视频| 99精品欧美一区二区蜜桃免费| avtt天堂在线| 9191成人精品久久| jizz在线观看中文| 青青草原成人在线视频| 老司机精品视频在线播放| 国产毛片久久久久久国产毛片| 国产尤物一区二区| 貂蝉被到爽流白浆在线观看| 日本精品视频一区二区| 日本一本草久在线中文| 55夜色66夜色国产精品视频| 鲁大师精品99久久久| 久久久性生活视频| 成人免费毛片aaaaa**| 久久国产免费观看| 欧美videossexotv100| 最新日本在线观看| 51国偷自产一区二区三区的来源| 亚洲字幕久久| 原创真实夫妻啪啪av| 亚洲激情图片一区| www.亚洲欧美| 欧美激情视频网站| 国产精品久久久网站 | 日韩电影免费一区| 国产午夜福利一区| 欧美午夜一区二区三区| av在线之家电影网站| 国产伦精品一区二区三区精品视频| 成人羞羞动漫| 国产5g成人5g天天爽| 亚洲精品视频自拍| 乱精品一区字幕二区| 97在线观看免费高清| 亚洲人亚洲人色久| 色综合天天色综合| 亚洲色欲色欲www| 精品人妻一区二区三区浪潮在线 | 亚州一区二区三区| 一区二区国产日产| 国产成人av资源| 久久午夜免费视频| 亚洲欧美制服丝袜| 日日夜夜亚洲精品| 成人午夜视频免费观看| 91视视频在线直接观看在线看网页在线看| 中文字字幕在线中文| 丝袜一区二区三区| 亚洲一二三区视频| 日日摸日日碰夜夜爽av| 中文天堂在线一区| www.香蕉视频| 日本亚洲欧洲色α| 国产精品久久久久久影院8一贰佰 国产精品久久久久久麻豆一区软件 | 欧美性受ⅹ╳╳╳黑人a性爽| 国产视频一区二区三区四区| 久久亚洲一区| 一区二区成人免费视频| 日韩精品欧美国产精品忘忧草 | 欧美性色黄大片人与善| 老色鬼精品视频在线观看播放| 久久艹精品视频| 亚洲欧美制服中文字幕| 国产精品一区二区美女视频免费看| 妺妺窝人体色777777| 中国色在线观看另类| 欧美一区二区三区激情| 国产精品九九九| 在线看片一区| 国产18无套直看片| 欧美成人video| 国产成人精品一区二区三区免费| 黑人巨茎大战欧美白妇 | 日韩在线视频免费看| 精品一区二区三区三区| 免费观看性欧美大片无片| 99久久激情视频| 亚洲成av人影院|