程序說明php
eAccelerator是一個自由開放源碼php加速器,優化和動態內容緩存,提升了php腳本的緩存性能,使得PHP腳本在編譯的狀態下,對服務器的開銷幾乎爲零。 它還有對腳本起優化做用,以加快其執行效率。使您的PHP程序代碼執效率能提升1-10倍。eAccelerator自己的開銷也是極少的。html
###服務器上之間下載###
[root@web-yv3 ~]# wget https://github.com/eaccelerator/eaccelerator/tarball/master
[root@web-yv3 ~]# ll
-rw-r--r-- 1 root root 131579 Nov 29 17:34 master #此文件就是下載的eAccelerator的安裝包,勿驚勿驚!!
###官網自行下載###
http://eaccelerator.net/
eaccelerator-eaccelerator-42067ac.tar.gz
經過rz上傳或ftp上傳!!
[root@web-yv3 ~]#tar xf master #常規方式解壓
[root@web-yv3 ~]# ls
eaccelerator-eaccelerator-42067ac master
[root@web-yv3 ~]# cd eaccelerator-eaccelerator-42067ac #已經露出了廬山真面目!
phpize是用來擴展php擴展模塊的,經過phpize能夠創建php的外掛模塊。git
[root@web-yv3 ~]# cd eaccelerator-eaccelerator-42067ac
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# whereis phpize
phpize: /usr/bin/phpize /usr/share/man/man1/phpize.1.gz
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# /usr/bin/phpize
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# whereis php-config
php-config: /usr/bin/php-config /usr/share/man/man1/php-config.1.gz
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# ./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# make
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# make install
Installing shared extensions: /usr/lib64/php/modules/ ##記錄此安裝位置
+-------------------------------------------------------+
| !!! Attention !!! |
| |
| For disk cache users (using eaccelerator.shm_only=0): |
| |
| Please remember to empty your eAccelerator disk cache |
| when upgrading, otherwise things will break! |
+-------------------------------------------------------+
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# vi /etc/php.ini
extension="/usr/lib64/php/modules/eaccelerator.so"
eaccelerator.shm_size="64"
eaccelerator.cache_dir="/data/eaccelerator_cache"
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_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
extension="/usr/lib64/php/modules/eaccelerator.so" #加載eaccelerator模塊
eaccelerator.shm_size="64" #用來設置分配給eAccelerator用來緩存php的最大共享內存,單位是mb,若是設置爲0,就使用默認大小。
eaccelerator.cache_dir="/data/eaccelerator_cache" #用來設置硬盤緩存目錄。eA用來存放預編譯代碼,session數據,內容和用戶入口。默認值是"/tmp/eaccelerator"。
eaccelerator.enable="1" #用來設置是否啓用或禁用eAccelerator,設置1爲啓用,設置0爲禁用。
eaccelerator.optimizer="1" #開啓或關閉優化,用戶加速代碼的執行。1爲開啓,0爲關閉,優化僅僅在腳本被編譯時候發生而且是在被緩存以前。
eaccelerator.check_mtime="1" #在每次命中的時候Eaccelerator都會檢查腳本的修改時間來判斷是否是腳本發生的變化來決定是否須要從新編譯。在每次命中的時候Eaccelerator都會檢查腳本的修改時間來判斷是否是腳本發生的變化來決定是否須要從新編譯。
eaccelerator.debug="0" #開啓關閉debug日誌。若是設置爲1,將打印不少文件命中的信息到日誌中。
eaccelerator.filter="" #用來決定哪一個php文件被緩存。能夠經過使用通配符(好比"*.php *.phtml")來匹配須要緩存的php腳本。若是以"!"開頭,表示不匹配,這個參數默認是空,好比定義了"!/home"的話,那全部/home目錄的腳本都不會被緩存。若是要定義多個匹配,使用空格或者製表符分開,而不是逗號。
eaccelerator.shm_max="0" #設置內存緩存能夠緩存文件的最大值
eaccelerator.shm_ttl="0" #當eAcelerator沒有空餘的共享內存的時候,就會把最少shm_ttl設置的秒數沒訪問過的腳本從緩存中釋放掉,默認值是0,表示eA不會釋聽任何緩存。
eaccelerator.shm_prune_period="0" #當沒有足夠的內存用來緩存的時候,eA會在上次清除緩存的時間超過了shm_prune_period設定的秒數時再次嘗試清除過時的腳本。默認值爲0,eA將不從緩存中清除過時的腳本。
eaccelerator.shm_only="0" #啓用或者禁用磁盤緩存。這個選項對session數據和內容的緩存沒效果。默認值是0,容許eA使用磁盤和內存進行緩存。
eaccelerator.compress="1" #當使用eaccelerator_content_* 的api時,eA能夠在緩存前對內容進行壓縮。默認值爲1表示啓用,禁用爲0。
eaccelerator.compress_level="9" #內容緩存的壓縮等級。默認值爲9,是最大壓縮級別。
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# mkdir /data/eaccelerator_cache
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# chown deploy.deploy eaccelerator_cache/ -R
[root@web-yv3 ~]# service php-fpm restart
[root@web-yv3 html]# vi phpinfo.php
<?php
echo phpinfo();
?>
[root@web-yv3 eaccelerator_cache]# ll
drwx------ 18 deploy deploy 4096 Nov 29 19:41 500
eAccelerator控制面板的地址,安裝包裏有一個control.php文件,把它複製到網站的任意目錄,能夠用它查看和管理,這個必須指定,不然查看緩存內容的時候會出錯,訪問時候默認的用戶名是:admin,密碼:eAcceleratorgithub