日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

系統設計小抄 - 如何做到高可用、高吞吐、高擴展性

來源: 責編: 時間:2023-12-20 17:47:19 270觀看
導讀我們經常需要設計具有高可用性、高可擴展性和高吞吐量的系統。它們的確切含義是什么?下圖是一份系統設計小抄,包含“三高”常見的解決方案。圖片01 高可用性高可用意味著我們需要達到一個高水平的正常運行時間。我們通

我們經常需要設計具有高可用性、高可擴展性和高吞吐量的系統。它們的確切含義是什么?eXu28資訊網——每日最新資訊28at.com

下圖是一份系統設計小抄,包含“三高”常見的解決方案。eXu28資訊網——每日最新資訊28at.com

圖片圖片eXu28資訊網——每日最新資訊28at.com

01 高可用性

高可用意味著我們需要達到一個高水平的正常運行時間。我們通常將設計目標描述為 "3 個 9 " 或 "4 個 9"。"4 個九",即 99.99% 的正常運行時間,意味著服務每天只能中斷 8.64 秒。eXu28資訊網——每日最新資訊28at.com

要實現高可用性,我們需要在系統中設計冗余。有幾種方法可以做到這一點:eXu28資訊網——每日最新資訊28at.com

  • Hot-Hot

兩個實例接收相同的輸入,并將輸出發送到下游服務。如果其中一方宕機,另一方可以立即接替。由于兩邊都向下游發送輸出,下游系統需要能夠處理重復數據。eXu28資訊網——每日最新資訊28at.com

  • Hot-Warm

兩個實例接收相同的輸入,只有 Hot 端向下游服務發送輸出。如果 Hot 端宕機, Warm 端將接替并開始向下游服務發送輸出。eXu28資訊網——每日最新資訊28at.com

  • 單領導集群 (Single Leader)

一個領導實例從上游系統接收數據并復制到其他副本。eXu28資訊網——每日最新資訊28at.com

  • 無領導集群 (Leaderless)

這種集群中沒有領導者。任何寫入都會復制到其他實例。只要寫入實例數加上讀取實例數大于實例總數,我們就能獲得有效數據。這被稱為 quorum。eXu28資訊網——每日最新資訊28at.com

02 高吞吐量

這意味著服務需要在一段時間內處理大量請求。常用的指標是 QPS(每秒查詢次數)或 TPS(每秒事務次數)。eXu28資訊網——每日最新資訊28at.com

為了實現高吞吐量,我們通常會在架構中添加緩存,以避免經過數據庫或磁盤等較慢的 I/O 設備。我們還可以為計算密集型任務增加線程數量。但是,增加過多的線程會降低性能。因此,我們需要找出系統的瓶頸,提高系統的吞吐量。eXu28資訊網——每日最新資訊28at.com

我們還可以在系統中使用異步處理,以有效地單獨隔離耗時耗資源的組件。eXu28資訊網——每日最新資訊28at.com

03 高擴展性

高擴展性意味著系統可以快速、輕松地擴展,以容納更多的容量(橫向可擴展性)或更多的功能(縱向可擴展性)。通常,我們通過觀察響應時間來決定是否需要擴展系統。eXu28資訊網——每日最新資訊28at.com

要實現高度可擴展性,需要隔離每個服務的職責。為此,微服務被廣泛采用。我們還利用服務注冊和負載平衡器將請求路由到適當的實例。eXu28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-50773-0.html系統設計小抄 - 如何做到高可用、高吞吐、高擴展性

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Docker容器如何打包應用程序的代碼和依賴項?

下一篇: 入門Rust的固定套路:錯誤處理模式有三大類,幫你總結了

標簽:
  • 熱門焦點
Top 主站蜘蛛池模板: 闻喜县| 清水河县| 大厂| 青川县| 达州市| 巨野县| 台中市| 西乌珠穆沁旗| 武城县| 额尔古纳市| 佛冈县| 锡林郭勒盟| 宝山区| 合水县| 山西省| 吉林省| 穆棱市| 收藏| 德阳市| 屏东县| 沈阳市| 榆中县| 灌云县| 屯昌县| 芦山县| 太原市| 越西县| 喀喇| 隆子县| 禄劝| 翼城县| 东台市| 新干县| 孟津县| 类乌齐县| 长岛县| 社旗县| 黑山县| 井冈山市| 北海市| 九寨沟县|