オペレーティング システム: Linux
1. 最初に ZendOptimizer をインストールします-3.2.2
# wget http://www.vista.ac.cn/linux/down/ZendOptimizer/ZendOptimizer-3.2.2-linux-glibc21-i386.tar.gz # tar zxvf ZendOptimizer-3.2.2-linux-glibc21-i386.tar.gz # cd ZendOptimizer-3.2.2-linux-glibc21-i386 # ./install.sh
「ZendOptimizer をインストールする場所を指定してください」: プロンプトの後に ZendOptimizer のインストール パスを入力します (例: /data/webserver/zend
) php.ini ファイルの場所を確認します: プロンプトが表示され、php.ini ファイルが存在するディレクトリ (/data/webserver/php/etc
など) を入力します。「Apache コントロールへのフル パスを指定します」ユーティリティ (apachectl): プロンプトが表示され、apachectl の絶対パス (/data/webserver/apache/bin/apachectl
など) を入力します。 2. eaccelerator-0.9.5 アクセラレーション ソフトウェアをインストールします (推奨学習: PHP ビデオチュートリアル )
# wget http://www.vista.ac.cn/linux/down/eaccelerator/eaccelerator-0.9.5.tar.bz2 # tar jxvf eaccelerator-0.9.5.tar.bz2 # cd eaccelerator-0.9.5
php が存在するパスを指定します:
# export PHP_PREFIX="/data/webserver/php" # $PHP_PREFIX/bin/phpize # ./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config # make # make install
この時点で、eaccelerator は php ディレクトリにインストールされ、画面が表示されますeaccelerator.so があるパス (例:
共有拡張機能のインストール: /data/webserver/php/lib/php/extensions/no-debug-zts-20060613/
#) ## このパスを覚えておいてください。 Eaccelerator は、PHP 拡張機能または zend 拡張機能としてインストールできます。次のインストールは PHP 拡張機能です。 /etc/php.d ディレクトリが存在する場合は、eaccelerator.ini をそのディレクトリにコピーして、デフォルト値を変更する必要があります。存在しない場合は、php.ini を変更し、[zend] の前に次の内容を追加します (注: [zend] の前に配置する必要があります):[eaccelerator] extension="/data/webserver/php/lib/php/extensions/no-debug-zts-20060613/eaccelerator.so" eaccelerator.shm_size="32" eaccelerator.cache_dir="/data/cache/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"
# mkdir -p /data/cache/eaccelerator # chmod 0777 /data/cache/eaccelerator
# service httpd restart
3. ZendOptimizer と eaccelerator が正常にインストールされているかどうかを確認します
次の内容を含む phpinfo.php ファイルを作成します:<?php phpinfo(); ?>
This program makes use of the Zend Scripting Language Engine: Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies with eAccelerator v0.9.5, Copyright (c) 2004-2006 eAccelerator, by eAccelerator with Zend Extension Manager v1.0.11, Copyright (c) 2003-2006, by Zend Technologies with Zend Optimizer v3.2.2, Copyright (c) 1998-2006, by Zend Technologies
extension="/data/webserver/php/lib/php/extensions/no-debug-zts-20060613/eaccelerator.so"
#------------------
eaccelerator.shm_size="32"
Linux では、単一プロセスの最大メモリ使用量は、/proc/sys/kernel/shmmax に設定された数 (バイト単位) によって制限されます。たとえば、CentOS 4.4 のデフォルトの shmmax 値は 33554432 バイトです。 (33554432バイト/1024/1024=32MB)。
値を一時的に変更します:
# echo 字节数 > /proc/sys/kernel/shmmax
上記の方法に従うと、システムが再起動されるたびに値が自動的に復元されます。永続的な変更を加えたい場合は、/etc/sysctl.conf ファイルを変更して次のように設定します。 ##
kernel.shmmax = 字节数
-- ------------------
eaccelerator.cache_dir="/data/cache/eaccelerator"
------------------
eaccelerator.enable="1"
説明: コードの最適化をオンまたはオフにします。オンにすると速度が向上します。コードの実行速度。 「1」はオン、「0」はオフを意味します。デフォルト値は「1」です。
------------------
eaccelerator.optimizer="1"
説明: この項目をオンにすると、eaccelerator は変更をチェックします。 php ファイルの時刻を調べて、それが変更されたかどうかを確認します。これにはしばらく時間がかかります。php ファイルが変更されている場合、eaccelerator は再コンパイルして php ファイルをキャッシュします。このオプションをオフにすると、PHP ファイルが変更された場合、変更された PHP ファイルを表示する前に、eaccelerator キャッシュを手動で削除する必要があります。 「1」はオン、「0」はオフを意味します。デフォルト値は「1」です。
------------------
eaccelerator.check_mtime="1"
説明: デバッグ ログをオンまたはオフにします。 eaccelerator をオンにすると、キャッシュ ファイルに対するすべてのリクエストが記録されます。これをオンにすることは、eaccelerator にバグがあるかどうかをデバッグする場合にのみ有益です。 「1」はオン、「0」はオフを意味します。デフォルト値は「0」です。
------------------
eaccelerator.debug="0"
------------------
eaccelerator.filter=""
説明: ユーザーは、eaccelerator_put などの関数を使用して、最大値を共有できます。メモリにロードされたデータ。デフォルト値は「0」で、制限なしを意味します。 (単位はバイト)
---------------------
eaccelerator.shm_max="0"
説明: 空き共有が足りない場合メモリが新しいスクリプトをバッファリングしようとすると、少なくとも shm_ttl 秒前にアクセスされていないファイルは削除されます。デフォルト値は「0」です。これは、共有メモリから古いスクリプトを削除する試みが行われないことを意味します。 (単位は秒)
eaccelerator.shm_prune_period="0"
解释:当没有足够的空闲共享内存去尝试缓冲一个新脚本时,将删所有旧脚本,前提是这个尝试在超过shm_prune_period秒之前被执行过。默认值为"0",表示不尝试从共享内存中删除任何旧的脚本。(单位为秒)
--------------------
eaccelerator.shm_only="0"
解释:打开或者关闭在磁盘上缓存编译过的脚本。这个参数对会话数据和内容缓存没有效果。默认值为"0",表示使用磁盘和共享内存来缓存。
--------------------
eaccelerator.compress="1"
解释:打开或者关闭缓存内容压缩。"1"指打开,"0"指关闭。默认值为"1"。
--------------------
eaccelerator.compress_level="9"
解释:内存压缩的级别。默认值为"9",表示最大压缩。
参考资料:
1、Installing from source (http://www.eaccelerator.net/wiki/InstallFromSource)
2、eAccelerator settings (http://www.eaccelerator.net/wiki/Settings)
以上がeaccelerator-0.9.5 をインストールして構成し、PHP-5.2.1 を高速化します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。