全域資料表的路由策略 - AWS 方案指引

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

全域資料表的路由策略

也許,全域資料表部署中最複雜的部分是管理請求路由。請求必須首先從終端使用者以某種方式選擇和路由到區域。請求會遇到該區域中的一些服務堆疊,包括可能由 AWS Lambda 函數、容器或 Amazon Elastic Compute Cloud (Amazon EC2) 節點支援的負載平衡器組成的運算層,以及其他可能的服務,包括另一個資料庫。該運算層會與 DynamoDB 通訊。它應該使用該區域的本機端點來執行此操作。全域資料表中的資料會複寫到所有其他參與的區域,而且每個區域在其 DynamoDB 資料表周圍都有類似的服務堆疊。

全域資料表會為不同區域中的每個堆疊提供相同資料的本機複本。如果本機 DynamoDB 資料表發生問題,您可以考慮為單一區域中的單一堆疊進行設計,並預期會對次要區域的 DynamoDB 端點進行遠端呼叫。這不是最佳實務。如果某個區域發生由 DynamoDB 造成的問題 (或更有可能是由堆疊中的其他項目或依賴 DynamoDB 的其他服務造成),則最好將最終使用者路由到另一個區域進行處理,並使用該其他區域的運算層,這將與其本機 DynamoDB 端點交談。這種方法完全繞過有問題的區域。為了確保彈性,您需要跨多個區域複寫:複寫運算層和資料層。

有許多將最終使用者請求路由到區域進行處理的技術。正確的選擇取決於您的寫入模式和容錯移轉考量。本節討論四個選項:用戶端驅動、運算層、Amazon Route 53 和 AWS Global Accelerator。