ホーム >  PHP >  win7、Apache環境でZend OPcacheを有効にする

投稿日:   |  最終更新日:

win7、Apache環境でZend OPcacheを有効にする

PHPsymfony

symfony_black_01

ローカル環境にsymfonyの導入を試みました。アクセラレーターが推奨とのことでしたので、 APCやeAcceleratorをインストールしようとしました。
しかし、Windows版のPHPへの対応状況があまりよろしくありません。私はPHP 5.5を使っていますが、APCが使えないことに気がつきました。調べたところによると、「Zend OPcache」を使うのが一般的なようです。
→ phpマニュアル

私の環境

OS windows7
xampp バージョン: 1.8.3
サーバーソフト Apache
php バージョン: 5.5.15

Zend OPcacheとは?

Zend OPcacheとは、PHP拡張モジュールの1つです。opcodeキャッシュと最適化エクステンションをしてくれます。
元はZend社の商用製品でしたが、2013年2月にオープンソースとなりました。仕組みは、まずコンパイル済みのバイトコードを共有メモリに保存します。
そして、PHP がリクエストのたびにスクリプトを読み込み、パースする手間を省きます。つまり、phpのパフォーマンスを向上してくれます。
PHP 5.5.0 以降のバージョンに標準添付として存在します。

Zend OPcacheとAPCの違い

Zend OPcacheは、KVS機能がありません。また、PHP 5.5はAPCがサポートされていませんので、APCuと併用します。

APCuと併用する

Zend OPcacheを設定したらAPCu(APC User Cache)を追加します。APCuは、APCと同等の機能で更にパフォーマンスの向上が期待できます。

Zend OPcache設定手順

作業の前に

①windows7は標準でadministratorアカウントが有効になっていません。administratorでない管理者は、アクセス権がありませんので有効化します。以下のコマンドでadministratorを有効化します。

net user administrator /active:yes

②ログオフして再ログインするとadministraotrのアカウントも選択できるようになります。

③自動ログインができるように、以下のコマンドを実行します。

control userpasswords2

④ユーザーアカウントの画面表示されます。
「ユーザーがこのコンピュータを使うには、ユーザー名とパスワードの入力が必要」のチェックを外します。

OPcacheの設定

①xampp1.8.3の場合は、php\ext配下にphp_opcache.dllが配置されています。php.iniの一番下に以下の記述を追加しましょう。

zend_extension = "C:\xampp\php\ext\php_opcache.dll"

②apacheを再起動しましょう。phpinfoを確認するとZend OPcacheが有効になったことが確認できます。

zend0002

xamppのシェルからかも確認できます。以下のコマンドをシェルで実行すれば、インストールされた結果が表示されます。

php -v

結果

zend0003

③②までの作業でほぼ完了です。しかし、opcacheの設定として以下の値をphp.iniで定義することを推奨します。

opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
トラックバック用のURL
プロフィール

名前:イワサキ ユウタ 職業:システムエンジニア、ウェブマスター、フロントエンドエンジニア 誕生:1986年生まれ 出身:静岡県 特技:ウッドベース 略歴 20

最近の投稿
人気記事
カテゴリー
広告