首頁 PHP 函式庫 其它類別庫 一個快取PHP庫
一個快取PHP庫
<?php
namespace Doctrine\Common\Cache;
class ApcCache extends CacheProvider
{
    protected function doFetch($id)
    {
        return apc_fetch($id);
    }
    protected function doContains($id)
    {
        return apc_exists($id);
    }
    protected function doSave($id, $data, $lifeTime = 0)
    {
        return apc_store($id, $data, $lifeTime);
    }
    protected function doDelete($id)
    {
        // apc_delete returns false if the id does not exist
        return apc_delete($id) || ! apc_exists($id);
    }
    protected function doFlush()
    {
        return apc_clear_cache() && apc_clear_cache('user');
    }
    protected function doFetchMultiple(array $keys)
    {
        return apc_fetch($keys) ?: [];
    }
    protected function doSaveMultiple(array $keysAndValues, $lifetime = 0)
    {
        $result = apc_store($keysAndValues, null, $lifetime);
        return empty($result);
    }

快取是指可以進行高速數據交換的記憶體,它先於記憶體與CPU交換數據,因此速率很快。 L1 Cache(一級快取)是CPU第一層快取。內建的L1快取的容量和結構對CPU的效能影響較大,不過高速緩衝記憶體皆由靜態RAM組成,結構較複雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。一般L1緩存的容量通常在32—256KB。 L2 Cache(二級緩存)是CPU的第二層高速緩存,分內部和外部兩種晶片。內部的晶片二級快取運作速率與主頻相同,而外部的二級快取則只有主頻的一半。 L2快取容量也會影響CPU的效能,原則是越大越好,一般桌上型電腦CPU的L2快取一般為128KB到2MB或更高,筆記型電腦、伺服器和工作站上用CPU的L2快取最高可達1MB- 3MB。

快取只是記憶體中少部分資料的複製品,所以CPU到快取中尋找資料時,也會出現找不到的情況(因為這些資料沒有從記憶體複製到快取中去),這時CPU還是會到記憶體去找數據,這樣系統的速率就慢下來了,不過CPU會把這些數據複製到快取中去,以便下次不要再到記憶體中去取。隨著時間的變化,被訪問得最頻繁的數據不是一成不變的,也就是說,剛才還不頻繁的數據,此時已經需要被頻繁的訪問,剛才還是最頻繁的數據,又不頻繁了,所以說快取中的資料要經常依照一定的演算法來更換,這樣才能確保快取中的資料是被存取最頻繁的。


免責聲明

本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn

相關文章

整合了前面的PHP資料庫連線類別~~做成一個分頁類別!_PHP教程 整合了前面的PHP資料庫連線類別~~做成一個分頁類別!_PHP教程

21 Jul 2016

整合了前面的PHP資料庫連線類別~~做成一個分頁類別!。不知道學PHP有沒有前途~哎越寫越沒勁?php Classcreatedb//類的開始{ var$db="localhost";//資料庫位址; var$dbname="root";//用戶名; var$ dbpwd="";//密碼; var$

一個簡單的php資料庫連線和文字快取綜合類 一個簡單的php資料庫連線和文字快取綜合類

23 Jul 2016

一個簡單的php資料庫連線和文字快取綜合類

為什麼要從 Python 中的「object」繼承:一個類別繼承問題 為什麼要從 Python 中的「object」繼承:一個類別繼承問題

24 Dec 2024

了解 Python 類別繼承在 Python 中,類別可以從其他類別繼承,這使它們能夠存取父類別的屬性並...

Memcache 與 Memcached:您應該選擇哪個 PHP 快取庫? Memcache 與 Memcached:您應該選擇哪個 PHP 快取庫?

12 Nov 2024

Memcache 與 Memcached:根據您的快取需求選擇正確的 PHP 函式庫在 PHP 快取庫領域,Memcache 和 Memcached 脫穎而出......

Memcache 與 Memcached:您應該選擇哪個 PHP 快取庫? Memcache 與 Memcached:您應該選擇哪個 PHP 快取庫?

09 Nov 2024

Memcache 與 Memcached:了解差異在 PHP 開發中,Memcache 和 Memcached 之間的選擇可能會令人困惑,尤其是...

如何在 Linux 上建立和使用動態共用 C 類別庫? 如何在 Linux 上建立和使用動態共用 C 類別庫?

05 Dec 2024

在 Linux 上建立和使用動態共用 C 類別庫建立共用類別庫要建立共用 C 類別庫,您可以依照...

See all articles