LNMP上升級部署PHP加速器eAccelerator

             本文僅在LAMP或LNMP架構的基礎上升級部署PHP加速器“eAccelerator”
一、關於:eAccelerator的介紹和理解
1.起源背景    
   eAccelerator 是一個免費開源的PHP加速、優化、編譯和動態緩存的項目,它可以通過緩存PHP代碼編譯後的結果來提高PHP腳本的性能,使得一向很複雜和離我們很遠的 PHP腳本編譯問題完全得到解決。通過使用eAccelerator,可以優化你的PHP代碼執行速度,降低服務器負載,可以提高PHP應用執行速度最高 達10倍。
   eAccelerator 項目誕生於2004年,當時它是作爲 Turck MMCache 項 目的一個分支提出並投入開發的。 Turck MMCache 由 Dmitry Stogov 開發,是個非常優秀的PHP內存緩存加速系統,如今仍然有很大部分 eAccelerator 的代碼應用到該項目中,目前該項目有很長時間沒有更新了,對於最新的PHP5.x的支持還未推出。
2、原理
   eAccelerator 通過把經過編譯後的PHP代碼緩存到共享內存中,並在用戶訪問的時候直接調用從而起到高效的加速作用。它的效率非常高,從創建共享內存到查找編譯後的代碼 都在非常短的時間內完成,對於不能緩存到共享內存中的文件和代碼,eAccelerator還可以把他們緩存到系統磁盤上。
   eAccelerator 同樣還支持PHP代碼的編譯和解釋執行,你可以通過encoder.php腳本來對php代碼進行編譯達到保護代碼的目的,經過編譯後的代碼必須運行在安 裝了eAccelerator的環境下。eAccelerator編譯後的代碼不能被反編譯,它不象其他一些編譯工具那樣可以進行反編譯,這將使得代碼更 加安全和高效。
3.調用 eAccelerator 過程
Apache中使用mod_php的請求、響應執行流程:
1、Apache接收請求。
2、Apache傳遞請求給mod_php。
3、mod_php定位磁盤文件,並加載到內存中。
4、mod_php編譯源代碼成爲opcode樹。
5、mod_php執行opcode樹。
PHP加速器相應的就是第四步,目的就是防止PHP每次請求都重複編譯PHP代碼,因此提高的訪問速度(在漂移中俗稱:加速器)
//(以上信息摘自互聯網,以下爲配置過程)
二、系統信息
1.系統環境: (在原有基礎上直接升級部署)
參考博文:http://linuxxx.blog.51cto.com/1824808/719972
硬件:HP 360G4/2G
System:Centos 5.4 
Web:nginx-1.1.6.tar.gz  
FastCGI:php-5.3.8.tar.gz
DB:mysql-5.5.3-m3.tar.gz
三、安裝部署軟件
1.安裝eaccelerator-0.9.6.1.tar.bz2
#tar jxvf eaccelerator-0.9.6.1.tar.bz2
#cd eaccelerator-0.9.6.1/
#/usr/local/php/bin/phpize                 //
#./configure --enable-eaccelerator=shared \
 --with-php-config=/usr/local/php/bin/php-config
#make
#make install
//析:/usr/local/php/bin/phpize 命令爲php擴展模塊,通過phpize可以建立php的外掛模塊,
//phpize在php編譯安裝後的bin目錄中
//在編譯你要添加的擴展模塊之前,需要執行phpize命令;
2.配置eAccelerator加速PHP
#mkdir /usr/local/eaccelerator_cache              //爲eaccelerator建緩存目錄
#chmod 777 /usr/local/eaccelerator_cache      //賦予777權限
3.修改PHP配置文件php.ini
#vi /usr/local/php/etc/php.ini
//增加以下信息
;[eaccelerator]
zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so"
eaccelerator.shm_size="64"
eaccelerator.cache_dir="/usr/local/eaccelerator_cache"      // 緩存文件存放位置
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="3600"
eaccelerator.shm_prune_period="3600"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
4.驗證eAccelerator是否部署成功
//通過瀏覽器訪問您的phpinfo()頁面

//或者運行#/usr/local/php/bin/php -i |head -10 查看php配置信息(主要是前10行)
//當php -i 沒有顯示錯誤,那麼請趕快#cd /usr/local/eaccelerator_cache
//如果有文件生成,證明eAccelerator爲PHP加速安裝成功!
5.本次升級成功完成,下次升級memcache和memcached敬請期待。。。
說明:配置雖然不多,但比較經典
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章