2007年1月11日 星期四

PHP 加速器~

粉順利能裝上...
cd /usr/ports/www/eaccelerator/;make install clean

What is eAccelerator?
----------------------
eAccelerator is a free open source PHP accelerator, optimizer, encoder and
dynamic content cache for PHP. It increases performance of PHP scripts by
caching them in compiled state, so that the overhead of compiling is almost
completely eliminated. Also it uses some optimizations to speed up execution
of PHP scripts. eAccelerator typically reduces server load and increases the
speed of your PHP code by 1-10 times.

eAccelerator is a fork of TurckMMCache

相信很多朋友都知道MMCache,不過很久前開發者就被Zend招安了,因此MMCache一直沒有官方的新版本...要支持最新的PHP4.3.10 或者PHP5.03都需要自己編譯源碼,對於普通用戶來說無異於天方夜譚...別灰心,我們還有eAccelerator!

1.首先,我們下載編譯好了的Module

http://www.arnot.info/eaccelerator/

選擇下載對應您的系統和PHP版本的eAccelerator

2.將其重命名為 eaccelerator.dll (win版) 或者 eaccelerator.so (linux版) 然後移至您的 php 的 extention文件夾,其路徑定義在您系統所用的的 php.ini 中

3.根據您系統的情況,一般有兩種安裝方式,一種按照Zend的擴展,一種是PHP擴展

如果是前者,請在您的 php.ini 中加入

zend_extension="/usr/lib/php4/eaccelerator.so" //路徑根據您系統的情況而定,文件擴展名也是,Win系統下是dll
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator" //需要手動創建
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_ts" i取代 "zend_extension".


PHP擴展安裝模式,請在您的 php.ini 中加入

extension="eaccelerator.so" //路徑根據您系統的情況而定,文件擴展名也是,Win系統下是dll
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator" //需要手動創建
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"


eAccelerator可以和Zend兼容,但是上面的代碼在 php.ini 必須定義與 Zend 的相關代碼之前,並且官方強烈建議,除非您必須使用Zend過的代碼,否則最好不同時使用Zend和eAccelerator
如何加快你的學務系統!

************另一各方法**********
文章來源:
http://proxy.csjh.tcc.edu.tw/phpbbinf/viewtopic.php?t=2507
作者:劉敏文(內埔國小)

本校學務系統為fedora 2
按照該文章設定並無問題!

一、加裝 eAccelerator
它是mmcache的後續版本目前版本是eAccelerator 0.9.4 release candidate 1
wget http://nchc.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.4.zip
unzip eaccelerator-0.9.4.zip
cd eaccelerator-0.9.4

安裝步驟如下:
1.export PHP_PREFIX="/usr"
2.$PHP_PREFIX/bin/phpize
3../configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
4.make
5.make install
6.cp /usr/lib/php4/eaccelerator.so /usr/lib/php/modules/eaccelerator.so
(若這裡執行失敗,請先至/usr/lib/php目錄,手動建立modules目錄)

7.vi /etc/php.ini
在最後一行加入
extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
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"

8.mkdir /tmp/eaccelerator
9.chmod 0777 /tmp/eaccelerator
10./etc/rc.d/init.d/httpd restart

二、根據mysql官方建議設定設定檔
1.cd /usr/share/doc/mysql-server-3.23.58
2.
my-small.cnf伺服器記憶體為64m
my-medium.cnf伺服器記憶體為128m
my-large.cnf伺服器記憶體為512m
my-huge.cnf伺服器記憶體為1~2g
my-innodb-heavy-4G.cnf伺服器記憶體為4g
3.依你的機器選擇設定檔
如cp /usr/share/doc/mysql-server-3.23.58/my-huge.cnf /etc/my.cnf
4.重新啟動mysql
/etc/rc.d/init.d/mysqld restart

完工!
試著執行看看學務管理系統首頁 / 教務 / 註冊組 / 學生資料查詢統計/ 學籍資料檢查 有沒有加快!
記住覆蓋設定檔前要做備分!
祝好運!

另外我順便補充mysqlcheck和myisamchk的用法免得我又忘記了!
在指令中下
mysqlcheck -a -c -o -r --all-databases -uroot -p密碼
即可最佳化所有db
參數的意義如下:
-a = Analyse given tables.
-c = Check table for errors
-o = Optimise table
-r = Can fix almost anything except unique keys that aren't unique

myisamchk可用crontab定時最佳化table
0 * * 0 /usr/bin/myisamchk -s /var/lib/mysql/*/*.MYI
myisamchk 詳細用法及參數請參閱http://netlab.cse.yzu.edu.tw/~statue/cfc/docs/mysqldoc_big5/manual_Maintenance.html#Maintenance
即可了解!

【下列文章您可能也有興趣】

沒有留言: