本頁面將說明 Cloud Storage 內建快取。 Cloud Storage 也與第三方 CDN 相容。
總覽
控管 Cloud Storage 物件的快取,提升應用程式效能,並確保內容保持最新狀態。快取物件資料儲存庫會將資料副本儲存在 Google 或網際網路快取中,加快日後的資料讀取要求。Cloud Storage 提供內建快取功能,運作方式與 CDN 類似。您可以透過 Cache-Control 中繼資料管理這項內建快取功能,定義快取儲存物件的方式和時間長度。
如需更進階的控制選項,請瞭解 Rapid Cache。
使用 Rapid Cache 進行快取
Rapid Cache 提供全代管、一律一致的 SSD 支援可用區讀取快取,可在運算資源中與工作負載相同的可用區建立。快取用於加速大型、資料密集型工作負載的資料提供。與直接從多區域 bucket 讀取資料相比,從快取讀取資料的資料移轉費用較低,可讓您最佳化成本。
詳情請參閱「Rapid Cache」。
Cloud Storage 內建快取
Cloud Storage 的運作方式與內容傳遞網路 (CDN) 類似,您不需執行任何操作,因為如果物件的 Cache-Control 中繼資料設為允許快取,且符合下列條件,物件的資料就會快取在 Cloud Storage 網路中:
- 物件為公開存取。
- 物件未儲存在已啟用要求者付費的 bucket,且不位於虛擬私有雲服務範圍內。
- 物件未以客戶自行管理的加密金鑰或客戶提供的加密金鑰加密。
Cloud Storage 會遵守 Cache-Control 的標準值,例如:
public:可以快取物件。private:Cloud Storage 不會快取物件,但物件可以快取在要求者的本機快取中。no-cache:物件可以快取,但必須先經過 Cloud Storage 驗證,才能用於滿足日後的要求。no-store:無法快取物件。max-age=TIME_IN_SECONDS:物件可快取的時間長度,超過這個時間就會被視為過時。您可以將max-age設為任何時間長度。除非有特殊情況,否則不會從快取提供過時物件。
如要設定物件的 Cache-Control 中繼資料,請參閱「編輯物件中繼資料」。
使用 IAM 拒絕政策時的內建快取行為
如果組織層級的 IAM 拒絕政策限制主體 ID allUsers的物件讀取存取權,即使 bucket 層級的 IAM 政策授予 allUsers 物件讀取存取權,系統也會停用該物件的內建快取。不過,如果 IAM 拒絕政策僅限制個別使用者,物件仍會啟用內建快取功能。
效能注意事項
可公開快取的物件效能會好得多。如果您是透過單一物件控管多個用戶端,並想停用快取功能來提供最新資料,請採取以下步驟:
建議改為將物件的
Cache-Control中繼資料設為public,並將max-age設為 15 至 60 秒。大多數應用程式都能容許物件過期幾秒鐘,以換取效能提升。對物件使用
Cache-Control: no-store,表示不得在任何快取中快取該物件,以供後續要求使用。
後續步驟
- 進一步瞭解
Cache-Control中繼資料。 - 進一步瞭解 RFC
Cache-Control指令。