快取:定義與快取被使用的所有領域

依照維基百科、MDN 與 WordPress 官方文件的分類,把從硬體到網頁使用快取的領域整理成一張樹狀圖。CPU、作業系統、資料庫和瀏覽器都用同一個名稱,所以「清除快取」清掉的東西也會依層級而不同。
快取是把常用或很快就會用到的資料,暫時存放在比原始來源更快的儲存空間,遇到相同的請求時,就用這份副本代替原始資料回應。
英文維基百科的 Cache (computing) 條目把快取分成 CPU 快取·GPU 快取這類硬體快取,以及磁碟·網頁·DNS·資料庫快取這類軟體快取。下方的樹狀圖依快取所在的位置把這些分類歸在一起,網頁快取則依照 MDN 的 private cache 與 shared cache 分類。
瀏覽器·CDN·伺服器內部快取處理一次 WordPress 請求的順序,可以在 網站快取 & 伺服器內部快取:WordPress 快取的運作方式 這篇文章用模擬器確認。
Ⅰ. 使用者終端裝置
個人電腦與智慧型手機這類使用者終端裝置的快取,可以分成作業系統(OS)快取、瀏覽器快取與行動 App 快取。
磁碟快取(page cache)把從磁碟讀取的資料留在記憶體中,由作業系統核心管理。DNS 快取則儲存最近查詢過的網域與 IP 位址。
再次請求相同資源時,不會一路到伺服器,或只確認是否有變更。使用 Service Worker(Cache API),離線時也能用儲存的資源開啟網頁應用程式。
處理大量內容的 App 會把收到的資料與最近瀏覽的清單存在裝置上,避免重複下載同樣的資料。
Ⅱ. 伺服器與應用程式快取
伺服器端快取是請求抵達伺服器後,附在產生頁面過程中的快取。WordPress 官方文件把它分成快取外掛(頁面快取)、物件快取與伺服器快取(OPcache 這類 opcode 快取)來說明。
相同頁面的請求不執行 PHP,直接送出儲存的副本。有快取外掛與網頁伺服器快取兩種。
再次執行同一個檔案時省略編譯。從 PHP 5.5 起預設內建。
把常用資料存在記憶體儲存區,避免重複執行相同查詢。
網頁框架把算繪好的範本與查詢結果存在自己的快取。
Ⅲ. 內容傳遞 / 網路基礎設施快取
網路基礎設施的快取在訪客與原始伺服器之間用副本回應,縮短實體距離並減輕原始伺服器的負載。在 HTTP 快取標準中,屬於多位訪客共用的 shared cache。
從分散在世界各地的伺服器中,離訪客最近的那台傳送。結構與優點請參考 什麼是 CDN?使用 CDN 的理由與 5 個好處 這篇文章。
網路設備存在 ARP 快取,電信業者與公用 DNS 解析器則在記錄的 TTL 期間保存查詢結果。
Ⅳ. 資料庫與儲存系統快取
磁碟 I/O 慢,所以資料庫與儲存裝置會把常讀的資料放到記憶體裡使用。
把常讀的資料與索引保留在記憶體。MySQL 查詢快取在 8.0 已移除,MariaDB 雖然還有,但預設是關閉的。
硬碟控制器內建的記憶體與 SSD 裡的 DRAM 會暫存資料,減少 I/O 延遲。
Ⅴ. 硬體層級快取
硬體快取是內建在 CPU 與 GPU 裡的高速記憶體,處理資料比主記憶體(RAM)更快。
L1 每個核心各有一份,分成指令快取與資料快取,L3 則由所有核心共用。記憶體管理單元(MMU)把虛擬位址轉換成實體位址的結果存在 TLB。
提高 GPU 在遊戲、3D 繪圖與機器學習運算中的處理效率。
Ⅵ. 雲端 / 虛擬化環境快取
在雲端與虛擬化環境中,重複使用容器映像、函式執行環境與建置產出物,縮短部署與執行時間。
Docker 映像由多個層組成,沒有變更的層不會重新建置或下載。
把呼叫結束的執行環境保留一段時間,下次呼叫時再使用,減少初始化時間(Cold Start)(Warm Start)。
縮短重複建置的時間。
🔢 FAQ & 推薦內容
ℹ️ 聯盟行銷說明
本站內容包含聯盟行銷連結。訪客透過這些連結購買商品或服務時,本站會從賣家獲得佣金。在這個過程中,購買者支付的金額(遇到活動折扣時金額會降低↓)並不會因此提高。刊登的價格、折扣與庫存資訊以撰寫當時為準,可能與實際情況不同,購買前請向賣家做最後確認。商品的挑選與評價依本站自訂的標準撰寫,是否支付佣金不會影響介紹順序或評價內容。








