问题标签 [opcache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
318 浏览

php - 字节码可以直接加载到 PHP opCache 中吗?

OPcache 生成的操作码是否可以在没有 PHP 源文件的情况下加载到 OPcache 中?

即以类似于 APC (Alternative PHP Cache) 的方式apc_bin_load(...)等等?

0 投票
0 回答
370 浏览

php - php 5.4 版本后如何使用 APC 缓存和教义2

我正在使用 APC 缓存进行教义2,在引导时配置:

以及 php.ini 的配置:

适用于 PHP 的 APC 缓存 dll 扩展可用于 php 版本 5.4 在 5.4 之后,内置扩展可用作 opcache,但如何将其与学说 2 一起使用?

0 投票
1 回答
1161 浏览

php - 如何将 OpCache 与 Symfony2 集成?

我是 symfony 的新手。我想将 OpCache 与 symfony2 集成。我不知道我该怎么做。如果有任何想法,请让我知道我应该做什么的步骤。

0 投票
2 回答
1497 浏览

php - 哪个是更快的 php 基于文件的缓存或 Opcache

我最近刚刚获得了关于 php 中 Opcache 的更新,我对Codeigniter中基于文件的缓存不太熟悉。

但我认为目前基于文件的缓存比其他缓存技术更快,因为不会有任何数据库访问,它直接连接到生成的 html 文件进行加载。所以它应该比其他技术快。

因此,我在 Google 中进行了搜索,一些网站通过对其进行基准测试来比较缓存的速度,其中他们提到与其他缓存技术 memcache 和 Opcache php 相比,文件缓存的检索速度很慢,我对报告感到困惑。

我知道每一种缓存技术都有自己的优点和缺点。建议我的情况,这样我的页面就不需要实时数据,目前我正在使用基于文件的缓存。那么去 Opcache 或 Memache 可以吗?

0 投票
1 回答
935 浏览

php - PHP5.5 OPCache 消息 - 消息缓存脚本

刚刚将 VPS 升级到 PHP 5.5,现在当 magento cron.php 脚本运行时,我的 cron 守护程序正在向我发送一封包含以下消息的电子邮件(在它根本没有向我发送任何消息之前):

这些工作似乎仍在运行,所以我认为它实际上并没有停止任何事情。但我不确定为什么我现在收到这些消息?

你觉得他们不好吗?

我怎样才能阻止他们?

0 投票
2 回答
5179 浏览

symfony - Symfony2 AnnotationException 你必须启用 OPCache 或 ZendOptimizer

我有基于 Symfony2 框架的应用程序。我已经转移到生产环境,网站运行良好(我正在尝试调整缓存 - 在我的主机上是 xcache)。但突然我有这个错误:

致命错误:未捕获的异常 'Doctrine\Common\Annotations\AnnotationException' 带有消息“您必须启用 opcache.save_comments=1 或 zend_optimizerplus.save_comments=1。” 在 /nfsmnt/hosting2_1/6/9/699be0da-dfbd-4651-90de-448d295bb741/playsport.sk/web/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationException.php:183 堆栈跟踪:#0 /nfsmnt/hosting2_1/6/9/699be0da-dfbd-4651-90de-448d295bb741/playsport.sk/web/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationReader.php(162): Doctrine\Common\ Annotations\AnnotationException::optimizerPlusSaveComments()

1 /nfsmnt/hosting2_1/6/9/699be0da-dfbd-4651-90de-448d295bb741/playsport.sk/web/app/cache/prod/appProdProjectContainer.php(237):

Doctrine\Common\Annotations\AnnotationReader->__construct() #2 /nfsmnt/hosting2_1/6/9/699be0da-dfbd-4651-90de-448d295bb741/playsport.sk/web/app/bootstrap.php.cache(2103): appProdProjectContainer->getAnnotationReaderService() #3 /nfsmnt/hosting2_1/6/9/699be0da-dfbd-4651-90de-448d295bb741/playsport.sk/web in /nfsmnt/hosting2_1/6/9/699be0da-dfbd-4651-90de-第 183 行的 448d295bb741/playsport.sk/web/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationException.php

我无法在我的主机上启用 opcache.save_comments(我没有特权,这是临时付费托管服务)。因此,我禁用了 prod 环境中的所有缓存并尝试重新运行网站。我目前的配置:

网络/应用程序.php:

config_prod.yml:

我真的不知道该怎么办。仍然像以前一样出错。如何禁用 Doctrine 中的注释缓存或该问题的任何其他解决方案。谢谢!

0 投票
0 回答
729 浏览

php - Zend Engine 已过时(如何更新它?)

安装 opcache 后(阅读后会提高性能),我收到 Zend Engine API 已过时的消息。但是不知道怎么更新?我到处寻找,没有成功。这是一个 Centos 6 服务器,带有 PHP 5.4.41。有人可以帮忙吗?谢谢

0 投票
1 回答
221 浏览

php - 是否可以告诉 php 解释器忽略代码块?

背景

回到我做 C 编程的那一天,我们使用假设语句来确保代码是健康的。就像是:

假设语句很酷的一点是它被定义为一个用于发布编译的空宏和一个在调试编译时的错误语句上死掉。因此,开发人员拥有断言语句检查他们的假设的所有好处,而不会导致不必要的错误或影响性能

问题

现在我正在使用 php,我正在寻找类似的机制。我目前的假设声明看起来像这样:

如您所见,我在服务器设置中设置了调试标志以删除实际的 die 语句等。但是,仍会执行函数调用,并且仍会评估 if 语句。如果它只发生几千次,这没什么大不了的,但是随着代码变得越来越大,并且这些假设被放入循环中,这可能会对性能产生合理的影响。

问题

有没有办法告诉解释器或 opcache(我目前正在使用 php 5.5 中包含的 zend opcache)完全忽略这些假设语句?还是有另一种处理这个问题的方法?

0 投票
1 回答
1150 浏览

debian - 如何使用 php 5.4.4 在 debian 上安装 opcache?

我正在运行 Debain PHP5.4.4,我想安装 opcache。

我试过:

不好:“没有可用于软件包的版本”

(由于服务器正在生产中,我认为安装 php5.5 并不安全。)

0 投票
0 回答
232 浏览

nginx - Nginx Opcache (fastcgi_cache_key) 和 GeoIP

我已经在谷歌/这个论坛上搜索了这个,但是如果这在其他地方已经被覆盖了,那么我找不到任何相关的东西所以提前道歉。

我已经在我的服务器上启用了 Opcache 并启用了 GeoIP。

默认的 fastcgi_cache_key 指令是:

如何修改它以包含用户国家/地区(来自 GeoIP),以便每个国家/地区的每个页面都有一个单独的缓存条目?

据我所知,GeoIP 标头设置在 server {} 块中,该块在设置 /etc/nginx/nginx.conf(fastcgi_cache_key 的位置)之后加载。

此外,我尝试在单个站点 conf 文件中设置 fastcgi_cache_key 但这仅在仅启用 1 个站点时才有效。

我在这里错过了一个非常简单的步骤吗?

非常感谢,

詹姆士