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

彩虹橋架構演進之路-負載均衡篇

開發 架構
彩虹橋目前依賴 SLB 做負載均衡和節點發現,隨著業務發展流量越來越高,SLB 帶寬瓶頸逐漸暴露,雖然在半年前做過一次雙 SLB 改造臨時解決了帶寬瓶頸,但運維成本也隨之變高。

一、前言

一年一更的彩虹橋系列又來了,在前面兩期我們分享了在穩定性和性能2個層面的一些演進&優化思路。近期我們針對彩虹橋 Proxy 負載均衡層面的架構做了一次升級,目前新架構已經部署完成,生產環境正在逐步升級中,借此機會更新一下彩虹橋架構演進之路系列的第三篇。

二、背景

彩虹橋目前依賴 SLB 做負載均衡和節點發現,隨著業務發展流量越來越高,SLB 帶寬瓶頸逐漸暴露,雖然在半年前做過一次雙 SLB 改造臨時解決了帶寬瓶頸,但運維成本也隨之變高。除了帶寬瓶頸外,SLB 無法支持同區優先訪問,導致難以適配雙活架構。所以準備去除彩虹橋對 SLB 的強依賴,自建彩虹橋元數據中心,提供負載均衡和節點發現等能力,同時支持同區訪問等能力來更好的適配雙活架構。下面會詳細介紹一下彩虹橋元數據中心以及 SDK 相關能力的相關細節。

三、核心名稱解釋

圖片圖片

四、現有架構回顧

在開始介紹彩虹橋元數據中心之前,我們先來回顧一下彩虹橋目前架構,以及存在的一些痛點。

現有架構

圖片圖片

  • 業務服務集成 SDK 通過域名訪問,請求經過 SLB 轉發到具體的 Proxy 節點。
  • 每個集群掛載雙 SLB,SDK 通過 DNS 解析輪訓路由到2個 SLB,2個 SLB 掛載不同的后端節點。
  • 每個集群部署的 Proxy 節點均為一個可用區,雙活架構為集群維度多可用區部署。
  • 業務側大多數為多可用區混布,單同一個邏輯庫只會連接一個彩虹橋集群,由于彩虹橋一個集群內的節點均為同一可用區,所以業務服務-彩虹橋這條鏈路必然會出現一半節點跨區訪問。
  • 彩虹橋集群按照業務域劃分,彩虹橋集群所屬業務域的 RDS 大多數都會跟彩虹橋集群同區。比如彩虹橋交易集群為i區,歸屬交易集群的邏輯庫掛載的 RDS 大多數也都是i區。

主要痛點

  • SLB 帶寬已達瓶頸(5Gb/s,歷史上出現過多次 SLB 帶寬達到 100%的情況),目前彩虹橋單集群掛載了雙 SLB 暫時解決帶寬瓶頸但仍存在痛點:1. SLB 擴容流程較復雜(配置監聽、配置虛擬服務器組、監聽綁定虛擬服務組,配置調度算法、更新域名解析的等),基于目前發布系統能力無法實現全自動化。根據之前混沌工程演練結果,SLB 擴容流程需要30分鐘左右。2. SLB 擴容后,需要改域名解析,DNS 解析生效需要一段時間(域名 TTL 1 分鐘,本地緩存10分鐘),新 SLB 需要10分鐘左右才開始逐漸承載流量,無法實現 SLB 快速擴容。
  • 單可用區故障時,需要人工操作切流到其他可用區集群,SLA 難以保證(目前無法自動化判定單可用區故障,且集群級別流量調度需要人工預估集群負載,難以實現自動化切流)。
  • SLB 目前支持最低權重為1/100,粒度較粗,無法支撐發布過程中的更小流量灰度需求。
  • Proxy 單個集群所有節點均為同一個 AZ,需要與下游 RDS 保證同 AZ,跨集群流量調度靈活性差,很難實現多可用區流量均衡(目前由于大部分 RDS 為 I 區,Proxy 多可用區流量非常不均衡:i區 90%/k 區流量 10%)。

五、自建元數據中心&SDK 增強

圖片元數據中心獨立部署圖片元數據中心獨立部署


  • 新增 Metadata 數據庫,多可用區部署(需要跟集群中的 Proxy 同區)。
  • 新增 MetaCenter 服務,多可用區部署。
  • Proxy 連接所有 Metadata 數據庫,注冊&心跳都會寫入到所有數據庫。
  • MetaCenter 服務定時查詢所有 metadata 數據庫,基于心跳版本號和多個數據庫的并集篩選出健康的節點列表存儲到內存中。
  • MetaCenter 服務提供 API,查詢 MetaCenter 內存中的可用節點列表數據。
  • SDK 啟動時會去通過7層 SLB 訪問 MetaCenter 提供的 API 拉取節點列表并存儲到內存,運行中每隔 5s 更新一次。
  • MetaCenter 每次計算時如果有節點下線,通過 ARK 實時下發拉取事件給 SDK,SDK 會立刻重新拉取一次節點列表。
  • SDK 通過下發的節點列表做負載均衡,優先路由到同可用區的 Proxy 節點,其次按照節點權重輪訓。
  • SDK 輪訓間隔時間和節點變更事件下發開關均為可配置,實時生效。

架構詳解

Metadata 數據庫

節點表結構設計節點表結構設計

  • beat_version:心跳版本號,只有上報心跳時會更新。
  • config_version:配置版本號,更新權重&狀態時會更新。
  • enabled:是否啟用

Proxy

節點啟動時

  • 注冊:啟動時會去所有 metadata 數據庫注冊當前節點,如果 node_info 不存在對應節點記錄,則新增,如果存在則修改權重為初始權重。
  • 啟動完成后需要調用 bifrost-admin 提供的調用節點啟用 API(發布腳本)
update node_info 
set weight = 1, config_version = #{config_version}
where cluster_name = ? and address = ?

節點運行時

  • 心跳:定時更新所有 metadata 數據庫節點記錄的 beat_version 字段
update node_info set beat_version = beat_version + 1 
where cluster_name = ? and address = ?

節點下線

  • 調用 bifrost-admin 提供的下線 OPEN API(發布腳本)

MetaCenter( Heimdall) 

  • 啟動時

初始化心跳版本號:記錄所有 metadata 數據庫每個節點最新 beat_version 和初始化心跳丟失次數到內存

圖片圖片

圖片圖片

  • 運行時

定時查詢節點信息(3s 一次),篩選可用節點并寫入到內存中,提供 OpenAPI 給 SDK 調用,每個庫均執行以下操作,最終會得到每個庫的可用節點列表,最后把多個 list 求并集,得到最終的可用列表,寫入到內存中。

查出所有列表數據后,對比內存中的 beat_version 與數據庫中的 beat_version,如不相同則更新內存,如果相同說明對應節點心跳有丟失,如果丟失次數超過閾值,則剔除此節點。

節點列表中除了 ip、端口信息外,還有權重,啟用狀態屬性, 這些屬性都屬于控制流變更,如果出現2邊數據庫不一致場景,以 config_version 最大的為準。

1.2.3.20節點與K區網絡斷開1.2.3.20節點與K區網絡斷開

1.2.3.20節點宕機1.2.3.20節點宕機

如果本次計算時有節點列表變化,會下發一個變更事件到 ARK(value 為時間戳-秒),SDK 在收到次配置變更后會立刻到 MetaCenter 拉取一次節點列表,以彌補定時輪訓的延時。

  • 兜底配置

MetaCenter 提供的 OpenAPI 是通過計算后存入內存的數據,為了可以人工干預節點列表,需要支持開關一鍵切換至人工配置的節點列表數據。

圖片圖片

SDK( Rainbow) 

  • SDK 啟動時會去通過7層 SLB 拉取節點列表并存儲到內存,運行中每隔5s更新一次。如果拉取失敗,啟動時報錯,運行中不做任何處理,等待下次拉取。如果拉取的可用節點列表為空,啟動時報錯,運行時兜底不做任何處理,等待下次拉取。
  • 拉取的可用節點列表與內存中做對比,如果有節點被移除,需要優雅關閉對應的存量連接(如果被移除節點超過1個,則不做驅逐)。  當可用節點數量/所有節點數量 < X%時,忽略本次變更,不更新內存中的可用節點列表。
  • 拉取的節點數據會按照可用區進行分組,分為同可用區&跨可用區2個隊列負載均衡時優先從同 AZ 節點隊列中進行加權輪訓。  當同AZ節點權重總和/所有節點權重總和 < Y%時,同 AZ 節點優先策略失效,退化為所有節點加權輪訓。  當同AZ可用節點 < Z時,同 AZ 節點優先策略失效,退化為所有節點加權輪訓 。
  • 需要新增查詢節點列表的監控埋點&以上三種計算結果的埋點

圖片圖片

另外 SDK 支持一鍵動態切換至走老架構方式(4層 SLB)

管理后臺

  • 新增頁面【節點管理】,用于查詢&管理節點

圖片圖片

  • 新增頁面【兜底節點管理】,用于管理兜底節點列表。

圖片圖片

  • 提供節點上下線 API,給發布系統調用。

修改狀態會去所有 metadata 數據庫執行,只有一個庫成功就返回成功,如所有庫都修改失敗,則返回失敗。

update node_info 
set enabled = 0, config_version = #{config_version}
where ip = ? and port = ?

容災能力

表格中的是否有影響和故障恢復時間均指 SDK-Proxy 的訪問鏈路,Proxy-DB 鏈路不在范圍內。

圖片圖片

  • 可用區i全部宕機舉例

參考以下時間線,可在30s左右完成恢復。

圖片圖片

  • i區 Metadata 數據庫故障,無影響。

圖片圖片

一些思考

Q:為什么不用 sylas(得物注冊中心產品)做注冊中心,而是要自建元數據中心做服務發現?

彩虹橋和 sylas 均為 P0 級別服務,對穩定性要求極高,在架構設計之初需要充分考慮到互相依賴可能帶來的級聯故障,在與注冊中心相關同學溝通后,決定自建彩虹橋元數據中心,實現自閉環。

Q:為什么不是傳統的基于 Raft 協議的三節點來實現服務發現,而是用多套數據源做 merge?

Raft 是工程上使用較為廣泛的強一致性、去中心化、高可用的共識算法,在分布式系統中,適用于高一致性、容錯性要求高的場景。但 Raft 協議需要維護領導者選舉和日志復制等機制,性能開銷較大,其次 Raft 協議相對復雜,在開發、維護、排障等方面會非常困難,反之采用多數據源求并集的方式更簡單,同時也具備單節點故障、整個可用區故障以及跨區網絡中斷等多種復雜故障下的容災能力。

Q:如何在 SLB 切換到新架構的過程中保障穩定性?

可灰度:支持單個上游節點粒度的灰度

可回滾:支持一鍵動態切換至 SLB 架構

可觀測:大量埋點數據可實時進行觀測,有問題可快速回滾。

圖片圖片

圖片圖片

六、總結

自建元數據中心后,將給彩虹橋帶來一系列收益:

  • 應用服務通過 SDK 直接連接 Proxy 節點,擺脫了對 SLB 的依賴,解決了帶寬瓶頸和額外網絡開銷問題,并提高了流量灰度控制的精細度。
  • 簡化了擴容流程,擴容時只需增加 Proxy 節點大大縮短整個擴容時間。
  • 多可用區容災實現自動故障轉移,無需人工干預。
  • SDK 具備了同 AZ 路由能力,更好適配雙活架構。
責任編輯:武曉燕 來源: 得物技術
相關推薦

2023-11-01 18:06:46

彩虹橋架構性能

2022-11-18 18:36:24

2024-05-16 07:51:55

分布式系統架構

2022-05-11 12:01:06

元宇宙區塊鏈華為

2019-09-27 08:18:13

負載均衡核心Key

2013-10-15 13:24:00

負載均衡架構

2016-03-15 16:24:47

集群調度框架演進

2014-11-06 13:35:03

負載均衡應用交付

2019-05-07 11:57:26

分布式架構負載均衡

2009-11-10 13:02:58

負載均衡安全網絡設備

2024-06-03 10:19:05

2011-09-01 10:23:47

Nginx負載均衡器負載均衡

2019-04-29 11:00:14

架構負載均衡互聯網

2017-07-03 08:08:25

負載均衡分類

2025-04-08 02:30:00

2023-07-02 11:14:21

工具TypeScript框架

2022-03-25 08:40:32

分布式架構

2025-09-25 10:42:46

2023-09-15 09:34:54

2015-12-14 10:26:40

點贊
收藏

51CTO技術棧公眾號

亚洲一级在线观看| 久久亚洲国产| 精品久久久免费| 神马影院一区二区三区| 国产麻豆免费观看| 欧美阿v一级看视频| 日韩大片在线观看视频| 91精品国产高清久久久久久91| 国产成人亚洲综合| 免费a级黄色片| 91国产一区| 亚洲aaa精品| 亚洲综合av一区| 天堂网2014av| 精品一区在线看| 2018日韩中文字幕| 丁香花五月激情| 欧美美女视频| 亚洲第一视频网站| 手机在线视频一区| 欧美日韩大片| 亚洲国产视频网站| 亚洲午夜精品久久| 深夜福利视频在线免费观看| 久久精品国产免费| 久久精品噜噜噜成人av农村| 欧美男人的天堂一二区| 日本中文字幕网址| 蜜桃视频在线观看www社区| 99久久精品久久久久久清纯| 亚洲va国产va天堂va久久| 亚洲成人自拍| 亚洲欧美一区二区三区四区五区| 欧美激情在线免费| 精品国产乱码久久久久久蜜臀| 亚欧美在线观看| 在线手机中文字幕| 亚洲成a人片综合在线| 中文字幕一区二区三区在线乱码 | 欧美黄色aaa| 日韩伦理一区二区三区| 精品三级av在线| 99九九99九九九99九他书对| 天美一区二区三区| 51精品免费网站| 色综合狠狠操| 在线播放国产一区二区三区| 日本一区二区三区网站| 菁菁伊人国产精品| 欧美精品一区二区三| 中文写幕一区二区三区免费观成熟| jizz久久久久久| 色综合天天狠狠| 欧美性大战久久久久xxx| 久久精品国产成人av| 怡红院成人在线| 精品国产鲁一鲁一区二区张丽 | 福利一区二区在线| 青青草国产精品97视觉盛宴| 亚洲老头老太hd| 玖草视频在线观看| 久久a爱视频| 日韩成人av网| 久久精品国产亚洲av麻豆| 亚洲人成网站77777在线观看| 日韩国产精品视频| 精品国产成人亚洲午夜福利| 精品视频网站| xxxxxxxxx欧美| 超碰手机在线观看| 日韩午夜在线电影| 日韩av理论片| 91精品中文字幕| 国产精品一区一区| 国内精品二区| 大片免费播放在线视频| 中文字幕在线观看一区| 日韩精品手机在线观看| 91超碰免费在线| 色婷婷久久久综合中文字幕| 性生活免费在线观看| 激情视频亚洲| 日韩精品999| 午夜精品久久久久久久99樱桃| 久久精品aaaaaa毛片| 国产福利片在线| 亚洲欧洲制服丝袜| 福利视频一二区| 电影亚洲一区| 欧美xxxxxxxxx| 91网站免费视频| 国产精品久久天天影视| 午夜精品久久久久久久久久久久久 | 欧美日韩黄视频| 美女露出粉嫩尿囗让男人桶| 久久93精品国产91久久综合| 日韩视频在线一区| 国产一级一级片| 国产精品sm| 国产精品91久久久| wwwav在线播放| 欧美国产日韩一二三区| 日本五级黄色片| 韩国精品主播一区二区在线观看| 国产精品中文字幕日韩精品| 精品一区二区三区在线观看| yy111111少妇影院日韩夜片| 欧美午夜黄色| 国产精品久久夜| 欧美成人一区二区三区在线观看| 久久精品午夜福利| 亚洲精品三区| 亚洲精美色品网站| 国产人与禽zoz0性伦| 国产一级片毛片| 中文字幕av免费观看| 亚洲精品黄色| 成人写真福利网| 无码精品在线观看| 国产精品久久久久久久久免费相片| 亚洲乱码日产精品bd在线观看| 亚洲精品永久免费视频| 精品国产乱子伦一区| 国产第一页精品| 一道本一区二区| 69堂成人精品视频免费| aiai在线| 色噜噜久久综合| 久久福利小视频| 国产一区二区三区四区老人| 国产精品夜色7777狼人| 日韩一二三四| 亚洲国产精品久久久男人的天堂| 午夜啪啪小视频| 久草成人在线| 欧美在线xxx| 丰满人妻一区二区三区无码av| 综合色天天鬼久久鬼色| 九九热99视频| 日韩欧美在线中字| 国产成人在线播放| 免费a在线观看| 欧美性xxxxx| 插吧插吧综合网| 亚洲一区中文| 精品一卡二卡三卡四卡日本乱码 | 色哟哟亚洲精品一区二区| 毛片视频网站在线观看| 99re这里只有精品首页| 国内精品国产三级国产在线专| 日韩一级片播放| 亚洲宅男网av| 日本一区二区在线播放| 国产天堂在线| 欧美日韩一区视频| 国产高清视频免费在线观看| 黄网站免费久久| 欧美 亚洲 视频| av一级亚洲| 国内成人精品视频| 日韩亚洲视频在线观看| 欧美专区日韩专区| 男女全黄做爰文章| 狠狠色丁香婷婷综合久久片| 亚洲国产精品影视| 亚洲午夜精品| 91成人免费观看网站| 黄网站在线观看| 欧美夫妻性生活| 九九热精品免费视频| 成人精品视频一区二区三区| 18禁男女爽爽爽午夜网站免费| 亚洲精品播放| 国产日韩在线免费| 在线观看电影av| 日韩成人黄色av| 中文无码av一区二区三区| 综合欧美亚洲日本| 日韩成人av一区二区| 日韩精品一区第一页| 亚洲欧洲免费无码| 欧美午夜在线播放| 欧美中文字幕视频| 亚洲乱亚洲乱妇| 精品美女在线播放| 免费av中文字幕| 一区二区三区影院| 国产特级黄色录像| 国产在线精品一区二区三区不卡 | 亚洲二区中文字幕| www.国产高清| 中文字幕亚洲精品在线观看| 中文字幕人妻一区| 日韩国产成人精品| wwwjizzjizzcom| 一道在线中文一区二区三区| 91精品国产自产在线老师啪| 精品三级久久| 日韩中文字幕网| 神马午夜精品95| 欧美日韩精品一区二区天天拍小说| 国产精彩视频在线观看| 国产清纯在线一区二区www| 亚洲色图欧美自拍| 每日更新成人在线视频| 日韩最新中文字幕| 亚洲+小说+欧美+激情+另类 | 50路60路老熟妇啪啪| 93在线视频精品免费观看| 国产亚洲精品美女久久久m| 777午夜精品电影免费看| 欧美国产亚洲视频| 日本中文字幕在线视频| 亚洲另类图片色| 成人无码一区二区三区| 欧美日韩在线三级| 国产www在线| 亚洲一卡二卡三卡四卡| 永久免费看片视频教学| 久久精品一区四区| 国产一卡二卡三卡四卡| 国内成人自拍视频| 啊啊啊国产视频| 美女黄色成人网| 人妻少妇精品无码专区二区| 欧美xxx在线观看| 亚洲国产精品中文| 国产人妖在线观看| 精品一区二区国语对白| 在线观看av日韩| 老司机精品久久| 日韩网址在线观看| 亚洲欧洲另类| 久久亚洲精品无码va白人极品| 艳女tv在线观看国产一区| 亚洲一区二三| 久久日文中文字幕乱码| 日韩色妇久久av| 欧美军人男男激情gay| 蜜桃狠狠色伊人亚洲综合网站| 国产精品毛片视频| 国产日韩在线一区二区三区| 9l亚洲国产成人精品一区二三| 91久热免费在线视频| 亚洲男人在线| 亚洲一区精品电影| 日本久久伊人| 不卡视频一区二区| 99亚洲乱人伦aⅴ精品| 高清国产在线一区| 风间由美中文字幕在线看视频国产欧美| 91黄在线观看| 国产精品流白浆在线观看| 国产一区二区三区高清| 欧美18xxxx| 欧美日韩亚洲一区二区三区四区| 九九久久婷婷| 少妇特黄a一区二区三区| 不卡中文一二三区| 正在播放91九色| 中文字幕午夜精品一区二区三区| 亚洲五码在线观看视频| 亚洲AV无码成人片在线观看 | 久久婷婷人人澡人人喊人人爽| 福利片在线一区二区| 精品蜜桃一区二区三区| 蜜桃一区二区| 亚洲高清乱码| 欧美一区网站| 女人和拘做爰正片视频| 日韩av高清在线观看| 国产乱码一区二区三区四区| 国产成人精品综合在线观看 | 欧美午夜寂寞| 日韩av一级大片| 亚洲精品成人无限看| 每日在线观看av| 久久一本综合频道| 午夜精品免费看| 日韩一区三区| 久久久久久国产精品久久| 91www在线| 国产精品极品美女在线观看免费| 在线高清欧美| 国产在线一区二| 欧美在线色图| 日韩精品免费一区| 午夜一级在线看亚洲| 午夜精品久久久久久久99热影院| 国产伦精品一区二区三区在线观看| 国产精品手机在线观看| 国产精品青草久久| 国产一级淫片a| 欧美日免费三级在线| 亚洲精品国产精品国| 亚洲天堂av网| 免费网站在线观看人| 国产精品久久久久久久久久尿| 日韩精品一区二区三区中文字幕| 鲁鲁视频www一区二区| 日韩影院二区| 国产极品粉嫩福利姬萌白酱| 国精品**一区二区三区在线蜜桃| 三级电影在线看| 日本不卡免费高清视频在线| 欧美三级电影在线看| 开心激情综合网| 亚洲精品www久久久| 含羞草www国产在线视频| 欧美一级黄色网| 日韩亚洲国产免费| 日韩精品一区二区三区视频在线观看| av网站免费大全| 亚洲最新av网址| 黄色18在线观看| 日韩美一区二区三区| 深田咏美中文字幕| 成人免费在线观看入口| 久久国产视频精品| 精品国产乱码久久久久久牛牛| 久热国产在线| 国产欧美精品一区二区| 国产日产精品一区二区三区四区的观看方式 | 久久久久中文字幕| 日韩专区视频网站| 亚洲mv在线看| 日韩成人伦理电影在线观看| 欲求不满的岳中文字幕| 亚洲午夜激情av| 99热这里只有精品3| xvideos亚洲人网站| 精品久久福利| 亚洲日本精品国产第一区| 男女精品视频| 成人精品999| 日韩欧亚中文在线| 欧美亚洲日本| 国产精品高潮呻吟视频| 欧美精品momsxxx| 欧美激情国产精品日韩| 91麻豆国产在线观看| 国产 欧美 日韩 在线| 亚洲精美色品网站| 九九色在线视频| 国产高清自拍一区| 国内精品美女在线观看| 日韩精品国产一区| 亚洲国产成人av好男人在线观看| 午夜精品久久久久久久96蜜桃| 欧美人交a欧美精品| 日韩欧美激情电影| www.夜夜爱| 不卡一区在线观看| 精品在线播放视频| 亚洲欧美成人精品| 日本精品网站| 亚洲午夜激情| 国产精品夜夜爽| 国产无遮挡免费视频| 亚洲精品福利资源站| gay欧美网站| 日韩三级电影网站| 黑人精品欧美一区二区蜜桃| 欧美成人精品欧美一级私黄| 精品奇米国产一区二区三区| 大香伊人久久| 欧美日韩天天操| 黄页网站大全一区二区| 久久久久噜噜噜亚洲熟女综合| 亚洲精品91美女久久久久久久| 亚洲校园激情春色| 亚洲一二三区在线| 国产成人精品影视| 国产情侣自拍av| 日韩在线观看免费高清完整版| 免费观看亚洲天堂| 免费黄色福利视频| 国产精品久久福利| 国产综合无码一区二区色蜜蜜| 日本国产精品视频| 久久久久久久久久久久久久| 中文字幕乱视频| 欧美日韩国产小视频在线观看| 日本三级韩国三级欧美三级| 欧美日韩亚洲免费| 国产乱子轮精品视频| 日韩 欧美 综合| 日韩中文在线观看| 欧美成a人免费观看久久| 手机在线看福利| 一区av在线播放| 第一页在线观看| 国产成人精品一区二区三区福利| 丝袜美腿成人在线| 久久久久久久久久99| 国产一级揄自揄精品视频| 最新国产一区二区| 一本大道熟女人妻中文字幕在线 | 亚洲va韩国va欧美va精四季| 福利91精品一区二区三区|