Symfony2 PHP 5.6 操作码

Symfony2 PHP 5.6 OpCode

我们在 php 5.6.

中使用 symfony2

使用默认配置,我们可以缓存验证元数据:

framework:
    validation:
        cache: apc

我们如何将它与 PHP 5.6 一起使用并内置在 OpCache 中?

默认情况下 app.php 我们可以缓存 class 自动加载器:

if (extension_loaded('apc')) {
    $apcLoader = new ApcClassLoader('foo', $loader);
    $apcLoader->register(true);
}

我们如何使用 Zend OpCache 实现同样的目标?我们尝试使用 UniversalClassLoader,但不确定是否正确。

在默认配置中,我们还可以使用 apc 来缓存学说元数据、dql 等:

doctrine:
    orm:
        metadata_cache_driver: apc
        result_cache_driver: apc
        query_cache_driver: apc

有没有一种方法可以使用 propel 而不是 Doctrine 来缓存元数据、结果和查询内容?

最新 PHP 版本中内置的 Opcache 不提供类似 APC 的用户存储 - 它仅用于字节码缓存。您可以安装 ApcU,以使用 APC 缓存驱动程序,否则,您将需要 select 不同的缓存机制。

对于 ClassLoader 来说这不是什么大问题,因为它已经由 Composer 优化和 Opcache 处理,但对其他缓存很有用。