訂閱以接收新文章的通知:

Cache Reserve 普遍可用:加強控制,儘量減少輸出成本

2023-10-25

閱讀時間:6 分鐘
本貼文還提供以下語言版本:English日本語한국어简体中文

每個人都在追求盡可能高的快取比率。從 Cloudflare 的快取提供更多內容意味著它可以更快地為訪客載入,節省網站營運商的來源輸出費用,並提供多層彈性和保護,以確保內容可供提供且網站能夠輕鬆擴展。一年前,我們推出了 Cache Reserve,以協助客戶從 Cloudflare 的快取中提供盡可能多的內容。

Cache Reserve goes GA: enhanced control to minimize egress costs

今天,我們很高興地宣布 Cache Reserve 已從測試版升級為正式版 (GA),並推出了多項令人興奮的新功能。這些新功能包括將 Cache Reserve 新增到 Cloudflare 儀表板的快取概觀部分顯示的分析中,使客戶能夠瞭解他們隨時間推移的 Cache Reserve 使用情況。我們還為客戶新增了一項功能,讓其能夠刪除 Cache Reserve 中的所有資料而不會丟失邊緣快取中的內容。這對於不再使用 Cache Reserve 儲存的客戶非常有用。

根據我們在測試期間收到的寶貴回饋,我們還推出了新工具,讓組織能夠更精細地控制將哪些檔案儲存到 Cache Reserve 中。Cache Reserve 的預設設定是快取所有可用的可快取檔案,但一些測試版客戶報告說,他們不希望快取某些快速變化的檔案。根據他們的回饋,我們新增了在 Cache Rules 中定義 Cache Reserve 資格的功能。這個新規則讓使用者可以非常具體地設定哪些流量被允許進入 Cache Reserve。

要親身體驗 Cache Reserve,請造訪 Cloudflare 儀表板上的 Cache Reserve 部分,按一個按鈕啟用 Cache Reserve,體驗經濟高效的高效能內容交付。

快取背景

當用戶端或瀏覽器發出請求時,內容傳遞就開始了,無論是網頁、影片、應用程式,甚至是貓的圖片。該請求傳輸到來源伺服器,也稱為所請求內容的主機。源端組裝必要的資料,將其封裝,然後將其分派回用戶端。此時,網站營運商通常會因將內容從其主機傳輸到發出請求的訪客而產生費用。「傳輸」的每 GB 資料是網站營運商每月託管帳單上的常見項目;我們將其稱為輸出費用或「輸出稅」,並且之前曾在部落格中解釋過為什麼我們認為這是不好的做法

在傳回用戶端的過程中,Cloudflare 能夠快取來源的回應。快取功能可使請求相同內容的後續訪客從我們的快取伺服器而不是來源伺服器接收內容。由於檔案現在由 Cloudflare 伺服器提供,因此網站營運商無需支付輸出費用。這也意味著更好的效能,因為 Cloudflare 快取伺服器的實際位置通常比客戶自己的來源伺服器更接近終端使用者。

從快取中提供檔案是透過網際網路高效傳遞內容的基本策略,通常也是必不可少的策略。我們可以透過查看快取的「命中/未命中」比率來評估快取的功效:當從快取伺服器提供網站內容時,稱為快取命中。但是,當內容不在快取中,並且我們需要返回來源伺服器來獲取內容的新復本時,我們將其稱為快取未命中

為什麼會發生快取未命中

有時,由於各種原因,可能無法從快取中提供符合條件的內容。當 Cloudflare 必須重新驗證來源以查看是否有新復本可用時,會出現一種情況。當客戶設定資源的存留時間 (TTL) 以指定應向訪客提供快取內容的時間以及何時將其視為過時(失效)時,就會出現這種情況。不過,_使用者_指定從快取中安全提供某項內容的時間長度只是問題的一部分。內容傳遞網路 (CDN) 還需要考慮如何為所有客戶充分利用儲存並執行網路最佳化,以確保將正確的資產快取在正確的位置。

在快取空間接近滿容量時,CDN 必須決定是否在指定的 TTL 之前逐出內容,以便為其他資產留出儲存空間。在 Cloudflare,我們的驅逐策略根據內容的受歡迎程度對內容進行優先順序排序,採用一種稱為「最近最少使用」(LRU) 的演算法。這意味著,即使內容的 TTL 指定該內容應該快取很長時間,如果它的請求頻率低於其他資源,我們仍然可能需要更早地逐出它,以便為更頻繁存取的內容騰出空間。

這種方法有時會讓使用者感到困惑,不知道為什麼會意外出現快取未命中。如果沒有驅逐功能,我們將被迫在遠離請求訪客的資料中心儲存內容,從而影響資產效能,並導致 Cloudflare 網路營運效率低下。

不過,有些客戶擁有大型內容庫,這些內容庫的請求頻率可能並不高,但他們仍然希望避免由其來源提供服務。在傳統的快取設定中,這些資產可能會因為不那麼受歡迎而被驅逐,當再次請求時,又會從源頭獲取,從而產生輸出費用。Cache Reserve 就是針對這種情況的解決方案,它允許客戶從 Cloudflare 的網路而不是他們的來源伺服器交付資產,從而避免任何相關的輸出稅,並提供更好的效能。

Cache Reserve 基本資訊

Cache Reserve 結合了多種 Cloudflare 技術,包括分層快取R2 儲存,無縫地為組織提供了一種方法,確保其資產永遠不會從 Cloudflare 網路中逐出,即使使用者不經常存取它們。一旦允許進入 Cache Reserve,內容可以儲存更長的時間(預設為 30 天),而不會受到 LRU 驅逐的限制。如果在此期間收到對該內容的另一個請求,則可以將其再延長 30 天(依此類推),或者直到 TTL 表明我們不應再從快取中提供該內容。Cache Reserve 充當支援所有可快取內容的安全網,因此客戶可以安心無憂,不必擔心不必要的快取驅逐和來源輸出費用。

Cache Reserve 的設定簡單高效,平均只需要幾秒鐘的時間即可完成設定,並立即開始看到命中率顯著增加。只需按下 Cloudflare 儀表板 Cache Reserve 部分中的一個按鈕,所有符合條件的內容都將在未命中時寫入 Cache Reserve,並在 Cloudflare 詢問資源來源之前擷取。有關使用 Cache Reserve 所需事項的更多資訊,請查看文件

客戶在使用 Cache Reserve 時還能節省大量費用,相比之前向託管服務提供者支付的輸出費用,這只占其中的很小一部分。正如 Docker 所說:

「Cache Reserve 將快取命中率提高了 2%,但消除了大約三分之二的 S3 輸出。輸出費用的減少幾乎比我們為 Cache Reserve 支付的價格高一個數量級。」Brett Inman,Docker | 工程資深經理

Cache Reserve 推出了哪些新功能?

自從我們上次發布有關 Cache Reserve 的部落格以來,我們對該產品進行了三項重要更新,以提高使用者的生活品質。

新的分析

在此之前,Cache Reserve 分析可顯示特定網站使用了多少儲存空間,並估算特定時間段內使用的操作次數。我們改進了分析功能,使其與傳統的 Cache analytics 更為相似,客戶可以從 Cache analytics 儀表板上檢視自訂時間序列中的儲存和操作情況。

此外,更新後的 Cache Reserve 分析功能還能讓您估算出使用該產品能節省多少輸出費用。

在接下來的幾個月中,我們還將擴展可見性,提供 Cache Reserve 上的最大項目和請求最多的項目的資訊。

Cache Reserve 刪除儲存

想要變更、移除或完全停止使用 Cache Reserve 的使用者要求一種簡單的方法來擦除其儲存,而不影響他們對 Cloudflare 傳統邊緣快取的使用。之前,清除 Cache Reserve 是透過清除內容來實現的。這可能會出現問題,因為清除還會擦除傳統邊緣快取中快取的內容,這可能會導致額外的來源獲取和輸出費用。

我們為客戶建立了一種新方法,只需按一下按鈕即可完全移除其 Cache Reserve 儲存,該按鈕可以在 Cache Reserve 儀表板中找到。執行此動作時,您需要等到 Cache Reserve 被清除後再重新啟用。此時間段可能會有所不同,具體取決於 Cache Reserve 中儲存的量,但通常可能需要大約 24 小時。

Cache Reserve 刪除按鈕與清除按鈕不同。清除仍然允許您透過單個請求使_所有_ Cloudflare 快取中的資源失效,包括 Cache Reserve 和邊緣快取。Cache Reserve 刪除按鈕將僅主動移除 Reserve 中的整個儲存。目前,可以對與區域關聯的整個 Cache Reserve 儲存執行此動作。

整合到 Cache Rules 中

我們從早期採用者那裡瞭解到,他們最需要的一項 Cache Reserve 功能是能夠指定其網站的哪些部分應該有資格儲存在 Cache Reserve 中。以前,當使用者啟用 Cache Reserve 時,所有符合 Cache Reserve 條件的網站資產都可以儲存在 Reserve 中。對於輸出敏感的客戶,我們仍然推薦這種方法。但是,對於真正想要自訂 Cache Reserve 資格的客戶,您現在可以使用 Cache Rules 來根據常用的 Cache Rules 欄位(主機名稱、路徑、URL 等)以及使用特定的新規則設定(例如資源的最小大小),指定應儲存在 Cache Reserve 中的資產。例如,您可以指定應寫入 Cache Reserve 的所有資源的最小大小為 100kb。透過使用新的規則功能,Cache Reserve 客戶可以自訂其 Reserve 的構建方式,同時仍然保持邊緣快取的利用率,並節省更多資金。

立即試用 Cache Reserve 吧!

您可以在 Cloudflare 儀表板中輕鬆註冊 Cache Reserve,方法是導覽到「快取」部分,按一下 Cache Reserve,然後按下啟用儲存同步。嘗試一下,然後告訴我們您的想法吧!

我們保護整個企業網路,協助客戶有效地建置網際網路規模的應用程式,加速任何網站或網際網路應用程式抵禦 DDoS 攻擊,阻止駭客入侵,並且可以協助您實現 Zero Trust

從任何裝置造訪 1.1.1.1,即可開始使用我們的免費應用程式,讓您的網際網路更快速、更安全。

若要進一步瞭解我們協助打造更好的網際網路的使命,請從這裡開始。如果您正在尋找新的職業方向,請查看我們的職缺
Cache ReserveGeneral AvailabilityApplication ServicesPerformanceConnectivity Cloud

在 X 上進行關注

Alex Krivit|@ackriv
Cloudflare|@cloudflare

相關貼文

2024年10月31日 下午1:00

Moving Baselime from AWS to Cloudflare: simpler architecture, improved performance, over 80% lower cloud costs

Post-acquisition, we migrated Baselime from AWS to the Cloudflare Developer Platform and in the process, we improved query times, simplified data ingestion, and now handle far more events, all while cutting costs. Here’s how we built a modern, high-performing observability platform on Cloudflare’s network. ...