AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

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

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

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

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

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

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

01 高可用性

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

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

  • Hot-Hot

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

  • Hot-Warm

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

  • 單領導集群 (Single Leader)

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

  • 無領導集群 (Leaderless)

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

02 高吞吐量

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

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

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

03 高擴展性

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

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

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

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

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

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

標簽:
  • 熱門焦點
Top