開発環境に PHP 5.5.1 をインストールし、キャッシュ プロバイダーとして Zend OpCache を構成しています。すべてが新しいバージョンと設定でサーバー上で動作していますが、私の symfony 2 プロジェクト内にはいくつかの「静的」データ (国、言語など) を格納するための Doctine2 キャッシュがあり、Opcache では動作しません。
今までDoctrine\Common\Cache\ApcCacheクラスを使って APC を使って Doctrine2 のキャッシュを操作していましたが、OpCache を操作するクラスがないようです。
これは、APC キャッシュの config.yml です。
# Services
services:
cache:
class: Doctrine\Common\Cache\ApcCache
現在、OpCache を使用してZendDataCacheを使用してキャッシュ システムを処理しようとしましたが、機能しません。
# Services
services:
cache:
class: Doctrine\Common\Cache\ZendDataCache
このエラーが表示されるので、ZendDataCache クラスは OpCache 用ではないと仮定します。
FatalErrorException: エラー: /var/www/meediam/src/vendor/doctrine/common/lib/Doctrine/Common/Cache/ZendDataCache.php 行 38 の未定義関数 Doctrine\Common\Cache\zend_shm_cache_fetch() の呼び出し
最後に、ArrayCacheを構成しましたが、動作しますが、背後にキャッシュ システムはありません。
質問は、 Doctrine 2 キャッシュで Zend OpCache を使用する方法を知っている人はいますか?
PS: Symfony 2.3.2 を使用しています