View a markdown version of this page

簡介 - 最佳實務設計模式:最佳化 Amazon S3 效能

簡介

您的應用程式從 Amazon S3 上傳和擷取儲存體時,可輕鬆達到請求中每秒數千筆交易的效能。Amazon S3 會自動調高請求率。例如,您的應用程式可在儲存貯體中達成每個字首每秒至少 3,500 個 PUT/COPY/POST/DELETE 與 5,500 個 GET/HEAD 請求。在儲存貯體中的字首數不受限制。您可以並行讀取以提升您的讀取或寫入的效能例如,如果您在 Amazon S3 儲存貯體裡建立 10 個字首,平行讀取,您可以縮放讀取效能至每秒 55,000 讀取要求。

而 Amazon S3 上的部分資料湖應用程式在查詢超過數 PB 資料時,能掃描數百萬或數十億個物件。這些資料湖應用程式獲得單一執行個體傳輸速率,讓 Amazon EC2 執行個體充分利用網路界面,在單一執行個體上最高達到 100 Gb/s。然後,這些應用程式會彙總多個執行個體之間的傳輸量,以取得每秒多個 TB。

其他應用程式為對延遲敏感的應用程式,例如社交媒體簡訊應用程式。這些應用程式可以獲得一致的小型物件延遲 (以及適用於更大型物件的第一個位元組輸出延遲),大約 100–200 毫秒。

其他 AWS 服務也可以協助加速不同應用程式架構的效能。例如,如果您想要單一 HTTP 連線有更高的傳輸速率或低於十毫秒的延遲,請使用 Amazon CloudFrontAmazon ElastiCache,以搭配 Amazon S3 進行快取。

此外,若您想要在相距遙遠的用戶端與 S3 儲存貯體之間快速傳輸資料,請使用 Amazon S3 Transfer Acceleration。Transfer Acceleration 使用 CloudFront 中遍佈全球的節點,加速地理距離的資料傳輸。

若您的 Amazon S3 工作負載使用含 AWS Key Management Service (SSE-KMS) 的伺服器端加密,請參閱《AWS Key Management Service 開發人員指南中的AWS KMS 限制,以取得使用案例所支援之請求率的資訊。

下列主題針對使用 Amazon S3 的應用程式,說明最佳化效能的最佳實務指導方針和設計模式。

此指導方針優先於先前有關 Amazon S3 效能最佳化的任何指導方針。例如,先前 Amazon S3 效能指導方針建議以雜湊字元將字首命名隨機化,以最佳化經常擷取資料時的效能。現在您不再需要為了效能隨機命名字首,而可以日期型序列模式,為字首命名。如需 Amazon S3 效能最佳化的最新資訊,請參閲效能準則效能設計模式