iT邦幫忙

2023 iThome 鐵人賽

DAY 4
0
Software Development

軟體架構備忘錄系列 第 4

Day 4 基本概念 - 架構SLA (知識點014~017)

  • 分享至 

  • xImage
  •  

SLA其實也是軟體架構屬性的一環,不過在架構SLA中記載的通常是可以明確衡量的數字屬性。
架構SLA包含:服務可用性、RTO、RPO、回應時間

服務可用性

描述

Service Availability(服務可用性)指的是在特定時間段內服務處於可用狀態的比例。這一概念是衡量系統、應用程式或服務在一段時間內持續正常運行的關鍵性能指標之一。服務可用性通常以百分比衡量服務連續提供的時間與總時間的比例。

若以一年為單位,一年有365天,每天24小時。所以一年共有365*24 = 8760小時。
99%可用,代表1%中斷,一年有87.6小時是服務中斷的。
99.9%可用,代表0.1%中斷,一年有8.76小時是服務中斷的。
99.99%可用,代表0.01%中斷,一年有0.876小時是服務中斷的。

若目標達到比99.9%更高的服務可用性,代表需要使用監控與自動切換機制,因為人工介入的處理與反應時間無法達到此時間目標,這也反映得更多的成本


RTO

描述

Recovery Target Objective (復原目標時間) 是指系統因發生故障或災難後而中斷服務後,需要多久時間以回復正常服務。通常以時間為單位進行估計,例如幾分鐘、小時甚至是天。

可能優化作法

  • 使用Docker等容器化技術提供快速回復
  • 使用熱備份或多站點等方式減少回復所需時間。
  • 規劃災難恢復計劃與實施演練,以建立故障恢復的SOP,加速恢復時間。
  • 監控與自動恢復:通過監控與自動恢復機制,以讓RTO減少到以分鐘為單位。

RPO

描述

Recovery Point Objective (復原點目標) 是指系統因發生故障或災難後而中斷服務後,會損失多少時間區間的資料。此時間與備份與資料同步頻率有關係,備份時間越頻繁,RPO就會越低。越關鍵的系統例如與客戶結帳金額相關的系統,RPO需要越低。因為客戶無法容忍任何已成交的資料明細流失。

可能優化作法

  • 即時同步資料到備援資料庫,此作法甚至可以達到以秒為頻率進行同步,這可以大幅降低。
  • 增加冗餘備份的數量與站點:將資料備份到不同機房,甚至是不同區域。以減少因為區域性災難造成的資料損失。

回應時間

描述

Response Time (回應時間) 是指系統會在幾快的時間內回應使用者的請求。系統回應速度越快,使用者的滿意度會較高。

可能優化作法

  • 快取:將資料快取在CDN、應用程式伺服器等處,以減少資料庫查詢的時間,加快回應速度,並減少伺服器的負擔。
  • 伸縮:通過垂直或水平伸縮,增加系統回應能力。通常搭配自動偵測伸縮以彈性應對使用者需求量。
  • 訊息駐列:將較費時的作業解耦合,由多個水平擴增的Consumer進行處理。以讓使用者快速得知伺服器已收到服務請求。
  • 優化程式邏輯:優化程式運作邏輯可以減少伺服器進行邏輯運算的時間。

上一篇
Day 3 基本概念 - 軟體架構屬性 (知識點008~013)
下一篇
Day 5 資訊安全 - 通用概念 (知識點018~022)
系列文
軟體架構備忘錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言