什麼是 Amazon CloudFront? - Amazon CloudFront

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

什麼是 Amazon CloudFront?

Amazon CloudFront 是一種網絡服務,可以加快向用戶分發靜態和動態 Web 內容(例如 .html,.css,.js 和圖像文件)的速度。 CloudFront 透過稱為節點位置的全球資料中心網路傳遞您的內容。當使用者要求您提供服務的內容時 CloudFront,會將要求路由至提供最低延遲 (時間延遲) 的節點,以便以最佳效能傳送內容。

  • 如果內容已經位於延遲最低的節點位置,請立即 CloudFront 傳送。

  • 如果內容不在該節點,請從您定義的來源 CloudFront 擷取內容,例如 Amazon S3 儲存貯體、 MediaPackage 通道或 HTTP 伺服器 (例如 Web 伺服器),您已將其識別為確定內容的來源。

舉個例子,假設您是從傳統 Web 服務器提供圖像,而不是從 CloudFront. 例如,您可以使用 URL https://example.com/sunsetphoto.png 來提供影像 sunsetphoto.png。

您的使用者可輕鬆瀏覽至此 URL 並看到影像。但是他們可能不知道他們的請求是從一個網路路由到另一個網路,透過組成網際網路的複雜互連網路集合,直到找到映像為止。

CloudFront 透過 AWS 骨幹網路將每個使用者要求路由至最能提供內容服務的節點,藉此加速內容的散佈。通常,這是 CloudFront 邊緣伺服器,可提供最快速的傳遞給檢視器。使用 AWS 網路可大幅減少使用者要求必須通過的網路數目,進而改善效能。使用者可以獲得更低的延遲 - 載入檔案的第一個位元所需的時間 - 以及更高的資料傳輸速率。

您也能獲得更高的可靠性和可用性,因為檔案 (也稱為物件) 的副本現在保留 (或快取) 在世界各地的多個節點。

設定交付內容 CloudFront 的方式

您可以建立 CloudFront 發佈來告訴您 CloudFront 要將內容從何處傳送,以及如何追蹤和管理內容傳遞的詳細資料。然後 CloudFront 使用靠近檢視者的電腦 (邊緣伺服器),以便在有人想要查看或使用內容時快速傳遞該內容。

如何 CloudFront 工作
如何設定 CloudFront 以傳遞內容
  1. 您可以指定原始伺服器,例如 Amazon S3 儲存貯體或自己的 HTTP 伺服器,從中 CloudFront 取得檔案,然後從世界各地的 CloudFront 節點分發檔案。

    原始伺服器儲存物件的原始、最終版本。如果您是透過 HTTP 提供內容,則您的原始伺服器會是 Amazon S3 儲存貯體或 HTTP 伺服器,例如 Web 伺服器。您的 HTTP 伺服器可以在 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體或您管理的伺服器上執行,這些伺服器也稱為「自訂的原始伺服器」

  2. 您將檔案上傳到原始伺服器。您的檔案 (也稱為物件) 通常包含網頁、影像和媒體檔案,但也可以是能透過 HTTP 提供的任何內容。

    如果您使用 Amazon S3 儲存貯體做為原始伺服器,您可以將儲存貯體中的物件設為可公開讀取,以便知道物件 CloudFront URL 的任何人都可以存取它們。您還可以選擇保持物件的隱私以及控制誰能對其作存取。請參閱使用已簽署網址和已簽署 Cookie 來提供私人內容

  3. 您可以建立 CloudFront 散佈,告訴使用者透過網站或應用程式要求檔案時,要從 CloudFront 哪些原始伺服器取得檔案。同時,您可以指定詳細資料,例如是否 CloudFront 要記錄所有要求,以及是否要在建立分發後立即啟用。

  4. CloudFront 會將網域名稱指派給您可以在 CloudFront 主控台中看到的新發行版,或在回應程式設計要求時傳回的網域名稱,例如 API 要求。如果想要,您可以改為新增要使用的替代網域名稱。

  5. CloudFront 會將發行版的設定 (但不是您的內容) 傳送至其所有邊緣位置存在點 (PoP) — 位於地理位置分散的資料中心中的伺服器集合,可 CloudFront 快取檔案複本。

當您開發網站或應用程式時,您會使用為您的 URL CloudFront 提供的網域名稱。例如,如果以分發的網域名稱 CloudFront 傳回d111111abcdef8.cloudfront.net,則 Amazon S3 儲存貯體 (或 HTTP 伺服器上的根目錄中) 中 logo.jpg 的 URL 為https://d111111abcdef8.cloudfront.net/logo.jpg

或者,您可以設置 CloudFront 使用您自己的域名與您的分發。在這種情況下,URL 可能是 https://www.example.com/logo.jpg

或者,您可以將原始伺服器設定為將標頭新增至檔案,以指出檔案在 CloudFront Edge 位置的快取中保留多長時間。在預設情況下,每個檔案在到期前的 24 小時內保持在節點。最短到期時間是 0 秒;沒有最大到期時間。如需詳細資訊,請參閱 管理內容在快取中停留的時間長度 (到期)

定價

CloudFront 從其邊緣位置傳出資料的費用,以及 HTTP 或 HTTPS 要求。定價依使用類型、地理區域和功能選擇而有所不同。

使用 Amazon Simple Storage Service (Amazon S3)、Elastic Load Balancing 或 Amazon API Gateway 等來 AWS 源時,從原始端傳輸到的資料永遠 CloudFront 是免費的。使用來 AWS 源時,您只需為從檢視器傳出資料傳輸 CloudFront 到檢視器的費用。

如需詳細資訊,請參閱CloudFront 定價和計費與儲蓄組合常見問題集。

CloudFront 技術資源

使用下列資源取得有關技術問題的解答 CloudFront:

  • AWS Re: post — 一個基於社區的問答網站,供開發人員討論相關的技術問題。 CloudFront

  • AWS Support 中心 — 此網站包含您最近的支援案例、結果 AWS Trusted Advisor 和健康狀態檢查的相關資訊。它也提供討論區、技術常見問題集、服務健康狀態儀表板以及 AWS Support 計劃相關資訊的連結。

  • AWS 高級 Support — 瞭解 AWS 高級 Support,這是一個 one-on-one可協助您在 AWS上建置和執行應用程式的快速回應支援管道。

  • AWS IQ — 獲得 AWS 認證專業人員和專家的幫助。