用戶端驅動的請求路由 - AWS 規定指引

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

用戶端驅動的請求路由

透過用戶端導向的請求路由,最終使用者用戶端 (應用程式 JavaScript、網頁或其他用戶端) 會追蹤有效的應用程式端點 (例如,Amazon API Gateway 端點而非常值 DynamoDB 端點),並使用其自己的內嵌邏輯來選擇要與之通訊的區域。它可能會根據隨機選擇、觀察到的最低延遲、觀察到的最高頻寬測量值或本機執行的健康狀態檢查來選擇。

用戶端驅動的請求路由

作為一個優勢,客戶導向的請求路由可以適應諸如現實世界公共互聯網流量條件之類的事情,以在發現任何性能下降時切換區域。用戶端必須瞭解所有可用端點,但啟動新的區域端點並不常見。

透過寫入任何區域模式,用戶端可以單方面選取其偏好的端點。如果對某個區域的存取受損,用戶端可以路由到另一個端點。

使用寫入到一個區域模式,客戶端需要一種機制,將其寫入請求路由到當前活動的 Region。這可能是一種基本機制,例如經驗測試目前哪個 Region 正在接受寫入請求(注意任何寫入拒絕並退回到替代請求)。或者,它可能是一種複雜的機制,例如使用全域協調器查詢目前的應用程式狀態 (可能建立在 Amazon Route 53 應用程式復原控制器 (ARC) 路由控制上,該控制提供五個區域、法定軸驅動的系統來維護全域狀態以滿足此類需求)。客戶可以決定讀取請求是否可以轉到任何區域以獲得最終一致性,還是必須路由到活動區域以獲得強大的一致性。

透過寫入您的區域模式,用戶端必須判斷其使用之資料集的主區域。例如,如果用戶端對應於一個使用者帳戶,且每個使用者帳戶都連結至某個區域,則用戶端可以要求適當的端點指派,以便從全域登入系統搭配其認證使用。

例如,協助使用者透過網路管理其商業財務的金融服務公司,會使用全域資料表並寫入您的區域模式。每個使用者都必須登入中央服務。該服務會傳回認證以及這些認證將運作之區域的端點。傳回的區域是根據使用者資料集目前所在位置而定。憑證僅在短時間內有效。之後,網頁會自動協商新登錄,這提供了可能將用戶活動重定向到新區域的機會。