CentOS 5/ZendOptimizer



前書き (更新:2010/03/26)

PHPスクリプトを使用していると、もっと高速化したい、効率を上げたいと要望が出てくる方もいらっしゃると思います。
そこで利用するのが Zend Optimizer です。
Zend OptimizerはZend Technologiesから配布されています。
これをWebサーバー側にインストールすることにより、コードの実行を高速化することができます。

この手のソフトは Zend Optimizer のほかにも
eAcceleratorAPC などがあります。
実行するプログラムなどによって効果が変わりますので、自分にあったものを使用するといいでしょう。

ソースファイルの入手

Zend Optimizerは各プラットフォーム向けが用意されています。
Zend Technologiesで無料登録後、DownloadからZend Optimizerを選択してダウンロードします。
利用するサーバーのプラットフォームにあったZend Optimizerをダウンロードしてください。

ここではLinux(x86)版を例に書きます。
ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz (執筆時:2008.09)

ソースファイルの展開

ダウンロードしたファイルを解凍します。

# tar xzf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz --directory=/usr/local/src/

インストール

解凍後 ZendOptimizer-3.3.3-linux-glibc21-i386 というディレクトリが作成されますのでディレクトリ内に移動します。

# cd /usr/local/src/ZendOptimizer-3.3.3-linux-glibc21-i386


ディレクトリ内にはインストール用のシェルスクリプトが用意されています。
これを使ってインストールします。

# ./install.sh

実行すると下記のような画面が表示されます。

Zend Optimizer Installation
─────────────────────────────────────



┌────────── Zend Optimizer 3.3.3  ──────────┐
│                                                               │
│ Welcome to the Zend Optimizer 3.3.0a Installation!            │
│                                                               │
│ For more information regarding this procedure, please see the │
│ Zend Optimizer Installation Guide.                            │
│                                                               │
│                                                               │
├───────────────────────────────-┤
│                           <  OK  >                            │
└───────────────────────────────-┘


画面の指示に従ってインストールを進めてください。

  • ライセンスの認証
  • インストールディレクトリの確認
  • apacheのインストールディレクトリの確認

が問われます。
基本的にリターンキーで進められます。

正常に処理が進めば、最後にPHP設定ファイル(php.ini)をZend Optimizer 配下に移動しましたという下記のメッセージが表示されます。

┌─────── Zend Optimizer 3.3.3  ────────┐
│                                                     │
│ The following configuration changes have been made: │
│                                                     │
│ - The php.ini file has been relocated from          │
│  /usr/local/lib to /usr/local/Zend/etc              │
│                                                     │
│  - A symbolic link for the php.ini file has been    │
│  created in /usr/local/lib.                         │
│                                                     │
│ - The original php.ini was backed up to             │
│  /usr/local/Zend/etc/php.ini-zend_optimizer.bak     │
│                                                     │
├──────────────────────────-┤
│                     <  OK  >                        │
└──────────────────────────-┘

下記のメッセージでインストール終了です。

┌───── Zend Optimizer 3.3.3  ──────┐
│                                             │
│The installation has completed successfully. │
│Zend Optimizer is now ready for use.         │
│You must restart your Web server for the     │
│modifications to take effect.                │
│                                             │
├──────────────────────-┤
│                  <  OK  >                   │
└──────────────────────-┘

apacheの再起動を問われますので、特に問題なければ <Yes> を選択して再起動してください。

初期設定

特に設定の修正(変更)は必要ありませんが、 PHPの設定ファイル(php.ini)がインストールしたことによって書き換わっていますので確認だけしておきます。

# vi /usr/local/Zend/etc/php.ini

最終行に下記のように追記されているはずです。

[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3
zend_optimizer.version=3.3.3
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

確認

info.phpとして下記のコードを入力したファイルを作成します。

<?
echo phpinfo();
?>

下記の箇所を確認してください。

&ref(): File not found: "zend-1.gif" at page "CentOS 5/ZendOptimizer";

インストールしたバージョンが表記されているはずです。

またページ中ほどには Zend Optimizer という項目として下記の表示がありますので、あわせて確認しておきます。

&ref(): File not found: "zend-2.gif" at page "CentOS 5/ZendOptimizer";

以上が表示されれば無事に起動しています。
実際に自分で作成されたコードを実行してみましょう。

前書きにも書きましたが、ソースコードの種類によっては思ったように高速化が望めなかったり、他のアクセレーターの方が高速な場合も多々あります。
また、実行できなかったり、エラーを吐き出す場合もあります。

そのような場合は一度、Optimizerを外して検証したり、最新のOptimizerがリリースされていないか など確認してみてください。



Last-modified: 2015-04-23 (木) 15:34:22 (1248d)