View a markdown version of this page

對經常存取的內容使用快取 - 最佳實務設計模式:最佳化 Amazon S3 效能

對經常存取的內容使用快取

許多將資料存放在 Amazon S3 的應用程式會提供資料「工作集」,供使用者重複請求。如果工作負載對一組常用的物件傳送重複的 GET 請求,您可以使用快取,例如 Amazon CloudFrontAmazon ElastiCacheAWS Elemental MediaStore,以最佳化效能。成功採用快取可以產生低延遲和高資料傳輸率。使用快取的應用程式傳送至 Amazon S3 的直接請求也較少,有助於減少請求成本。

Amazon CloudFront 是快速的內容交付網路 (CDN),在分散各地的大量連接點 (PoP) 之中,可直接快取來自 Amazon S3 的資料。在可能從多個區域或透過網際網路存取物件時,CloudFront 允許在存取物件的使用者附近快取資料。這樣能夠高效能傳遞熱門的 Amazon S3 內容。如需有關 CloudFront 的資訊,請參閱 Amazon CloudFront 開發人員指南

Amazon ElastiCache 受管的記憶體內快取。ElastiCache 可讓您佈建將物件快取在記憶體中的 Amazon EC2 執行個體。此快取會導致 GET 延遲數量級減少,以及下載傳輸量顯著增加。若要使用 ElastiCache,請修改應用程式邏輯,將熱門物件移入快取,而在向 Amazon S3 請求熱門物件之前,先檢查快取中有無這些物件。有關使用 ElastiCache 來提高 Amazon S3 GET 效能的範例,請參閱部落格文章:使用 Amazon ElastiCache for Redis 讓 Amazon S3 效能飛快

AWS Elemental MediaStore 是專為來自 Amazon S3 的影片工作流程和媒體交付而打造的快取和內容分發系統。MediaStore 特別針對影片提供端對端儲存 API,且建議用於需要高效能的影片工作負載。如需有關 MediaStore 的資訊,請參閱 AWS Elemental MediaStore 使用者指南