簡體   English   中英

Aws serverless - 切換區域的成本

[英]Aws serverless - cost of switching region

我目前正在開發 aws 無服務器后端(cognito、lambda、api Gateway、dynamodb、s3)。
. 我發現我之前選擇了錯誤的地區。

題:
1.aws開發中使用不同區域有什么區別嗎?
2.開發中換region成本高嗎(重新創建db/lambda函數/api網關)
3.使用我現在使用的相同無服務器設置/配置切換到另一個區域的正確方法是什么?

1. 成本和延遲會有所不同。

AWS 中的某些服務在不同地區有不同的成本。 默認情況下,某些服務是全局的(所有區域) - 例如 S3。 這篇博文中有一些有用的圖表,包括以下按地區划分的數據傳輸成本差異圖表: 在此處輸入圖片說明

如果您的客戶在區域 A 中並在區域 B 中請求服務,那么響應時間會稍微長一點。 通常時間不夠長,值得關注。 盡管如此,在服務和客戶之間使用 CloudFront 將減少速度減慢——並且在許多情況下可以提供更快的服務,因此即使客戶和服務在同一區域也值得這樣做。

2. 視情況而定

如果您手動創建這些服務,那么您將不得不再次在新區域的控制台中花費時間。 時間就是金錢,您可能會在設置中犯錯——您只是人類。

如果您在代碼中創建這些服務 - 使用 CloudFormation(或 AWS CDK、serverless.com、terraform 或許多其他實現基礎設施即代碼的方法),那么它不會花費任何費用。 您將有一個命令(可能是幾個),可以在任何區域重現您的基礎設施。

然后,您需要遷移數據。 這是不可避免的成本。 如果您已經在區域 A 中運行了一段時間,然后移動到區域 B,您將需要傳輸數據。 這將需要一個腳本來從 dynamo 中取出數據並將其放入新的。

3. 使用基礎設施即代碼並始終為數據遷移做好准備

看看 AWS CDK。 它允許您使用 Java、Python 或 JavaScript 定義您的服務,並且有一些不錯的教程。 https://cdkworkshop.com/

在編寫代碼時,構建腳本以從 dynamo 中提取數據。 即使您不將 tl 轉移到不同的區域,這也很有用 - 也許您想在暫存/開發環境中運行副本。

4.新服務不會在所有地區同時發布

如果您使用的是全新服務或現有服務的新功能,則可能尚未在每個地區提供。 選擇支持所有所需服務和功能的區域。 例如,在 AWS 2019 年 12 月發布的關於 Transit Gateway 的區域間對等互連的公告中,它表示此功能已發布到“美國東部(弗吉尼亞北部)、美國東部(俄亥俄)、美國西部(俄勒岡)、歐洲(愛爾蘭)” ) 和歐洲(法蘭克福)AWS 區域”和其他區域將很快推出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM