php加速器eAccelerator的配置參數、API詳解_php技巧

來源:互聯網
上載者:User

它還能夠對指令碼進行最佳化以便加速它們的執行速度。利用eAccelerator可以減少伺服器的負載並提高PHP代碼的執行時間。

eAccelerator配置選項:

複製代碼 代碼如下:

zend_extension_ts=”X:Appphp-5.2.13-Win32exteaccelerator.dll”
eaccelerator.shm_size=”32″
eaccelerator.cache_dir=”X:Appphp-5.2.13-Win32 emp”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”"
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
zend_extension_manager.optimizer_ts=”X:AppendendOptimizer-3.3.0libOptimizer-3.3.0″
zend_extension_ts=”X:AppendendOptimizer-3.3.0libendExtensionManager.dll”
zend_optimizer.optimization_level=”512″


eAccelerator配置參數詳細說明:

eaccelerator.shm_size

指定 eAccelerator 能夠使用的共用記憶體數量,單位:MB。“0″ 代表作業系統預設。預設值為 “0″。

eaccelerator.cache_dir

使用者磁碟緩衝的目錄。eAccelerator 在該目錄中儲存先行編譯代碼、session 資料、內容等。相同的資料也可以儲存於共用記憶體中(以獲得更快的存取速度)。預設值為 “/tmp/eaccelerator”。

eaccelerator.enable

開啟或關閉 eAccelerator。”1″ 為開啟,”0″ 為關閉。預設值為 “1″。

eaccelerator.optimizer

開啟或關閉內部最佳化器,可以提升代碼執行速度。”1″ 為開啟,”0″ 為關閉。預設值為 “1″。

eaccelerator.debug

開啟或關閉調試日誌記錄。”1″ 為開啟,”0″ 為關閉。預設值為 “0″。

eaccelerator.check_mtime

開啟或關閉 PHP 檔案改動檢查。”1″ 為開啟,”0″ 為關閉。如果您想要在修改後重新編譯 PHP程式則需要設定為 “1″。預設值為 “1″。

eaccelerator.filter

判斷哪些 PHP 檔案必須緩衝。您可以指定緩衝和不緩衝的檔案類型(如 “*.php *.phtml”等),如果參數以 “!” 開頭,則匹配這些參數的檔案被忽略緩衝。預設值為 “”,即,所有 PHP 檔案都將被緩衝。

eaccelerator.shm_max

當使用 ” eaccelerator_put() ” 函數時禁止其向共用記憶體中儲存過大的檔案。該參數指定允許儲存的最大值,單位:位元組 (10240, 10K, 1M)。”0″ 為不限制。預設值為 “0″。

eaccelerator.shm_ttl

當 eAccelerator 擷取新指令碼的共用記憶體大小失敗時,它將從共用記憶體中刪除所有在最後 “shm_ttl” 秒內無法存取的指令碼緩衝。預設值為 “0″,即:不從共用內春中刪除任何快取檔案。

eaccelerator.shm_prune_period

當 eAccelerator 擷取新指令碼的共用記憶體大小失敗時,他將試圖從共用記憶體中刪除早於“shm_prune_period” 秒的緩衝指令碼。預設值為 “0″,即:不從共用內春中刪除任何快取檔案。

eaccelerator.shm_only

允許或禁止將已編譯指令碼緩衝在磁碟上。該選項對 session 資料和內容快取無效判定。預設值為 “0″,即:使用磁碟和共用記憶體進行緩衝。

eaccelerator.compress

允許或禁止壓縮內容緩衝。預設值為 “1″,即:允許壓縮。

eaccelerator.compress_level

指定內容緩衝的壓縮等級。預設值為 “9″,為最高等級。

eaccelerator.name_sapce

一個所有鍵(keys)的前置詞字元串。如果設定該前置詞字元串則允許 .htaccess 或者 主設定檔在相同主機上運行兩個相同的鍵名。

eaccelerator.keys
eaccelerator.sessions
eaccelerator.content

判斷哪些鍵(keys)、session 資料和內容將被緩衝。可用參數值為:

1.“shm_and_disk” – 同時在共用記憶體和磁碟中快取資料(預設值);
2.“shm” – 如果共用記憶體用盡或者資料容量大於 “eaccelerator.shm_max”,則在共用記憶體或磁碟中快取資料;
3.“shm_only” – 僅在共用記憶體中快取資料;
4.“disk_only” – 僅在磁碟中快取資料;
5.“none” – 禁止快取資料。


eAccelerator應用程式介面(API):

eaccelerator_put($key, $value, $ttl=0)

將 $value 儲存在共用記憶體中,並儲存 $tll 秒。

eaccelerator_get($key)

從共用記憶體中返回 eaccelerator_put() 函數所儲存的緩衝數值,如果不存在或者已經到期,則返回 null。

eaccelerator_rm($key)

從共用記憶體中刪除 $key。

eaccelerator_gc()

刪除所有到期的鍵(keys)

eaccelerator_lock($lock)

建立一個指定名稱的鎖(lock)。該鎖可以通過 eaccelerator_unlock() 函數解除,在請求結束時也會自動解鎖。例如:

eaccelerator_unlock($lock)

解除指定名稱的鎖(lock)。

eaccelerator_set_session_handlers()

安裝 eAccelerator session 控制代碼。從 PHP 4.2.0 以後,您可以通過設定 php.ini 中的 “session.save_handler=eaacelerator” 安裝 eAccelerator 控制代碼。

eaccelerator_cache_output($key, $eval_code, $ttl=0)

在共用記憶體中緩衝 $eval_code 的輸出,緩衝 $ttl 秒。可以調用 mmcach_rm() 函數刪除相同 $key 的輸出。例如:

eaccelerator_cache_result($key, $eval_code, $ttl=0)

在共用記憶體中緩衝 $eval_code 的結果,緩衝 $ttl 秒。可以調用 mmcach_rm() 函數刪除相同 $key 的結果。例如:

eaccelerator_cache_page($key, $ttl=0)

緩衝整個頁面,且緩衝 $ttl 秒。例如:

eaccelerator_rm_page($key)

從緩衝中刪除由 eaccelerator_cache_page() 函數建立的相同 $key 的頁。

eaccelerator_encode($filename)

返回 $filename 檔案經過編譯後的編碼。

eaccelerator_load($code)

載入被 eaccelerator_encode() 函數編碼過的指令碼。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.