标签: opcache

如何使用PHP OPCache?

PHP 5.5已经发布,它有一个名为OPCache的新代码缓存模块,但似乎没有任何文档.

那么它的文档在哪里以及如何使用OPcache?

php opcache

242
推荐指数
3
解决办法
25万
查看次数

PHP(5.3+)中的\(反斜杠)有什么作用?

\在PHP中做什么?

例如,CSRF4PHP\FALSE,\session_id\Exception:

public function __construct($timeout=300, $acceptGet=\FALSE){
    $this->timeout = $timeout;
    if (\session_id()) {
        $this->acceptGet = (bool) $acceptGet;
    } else {
        throw new \Exception('Could not find session id', 1);
    }
}
Run Code Online (Sandbox Code Playgroud)

php namespaces opcode opcache

150
推荐指数
4
解决办法
5万
查看次数

暂时禁用OPCache

我最近搬到PHP 5.4并安装了OPCache,它功能非常强大!

如何暂时禁用缓存?

我试过了 :

 ini_set('opcache.enable', 0);
Run Code Online (Sandbox Code Playgroud)

但它没有效果.

谢谢

php opcache

40
推荐指数
3
解决办法
8万
查看次数

APC,APCu和Opcache之间的区别?

我正在运行带有以下包的Web服务器; php-apc 3.1.7-1 php5-fpm 5.3.10-1ubuntu3.10

但是,我已经在Ubuntu 14.04上构建了一个新的服务器,似乎php-apc不再可用了.

因此,APC是我的巨大流量的生命服务器(100 k /每日独特访问)

我对PHP的缓存机制有点困惑.新服务器包括以下软件包:php-apc 4.0.2-2build1 php5-apcu 4.0.2-2build1 php5-fpm 5.5.9 + dfsg-1ubuntu4.7

phpinfo()给我模仿"apc".据我所知,APC被APCu取代.

https://github.com/cepa/kickasscache 我正在为我的缓存运行这个免费课程,它确实在我的案例中保存了很多cpu/mem.但我无法理解这是否与APCu相同?

如果不是,我该如何设置正确的缓存?因为我的新服务器资源有限,我需要一个解决方案.

php -v返回

PHP 5.5.9-1ubuntu4.7 (cli) (built: Mar 16 2015 20:47:39)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
Run Code Online (Sandbox Code Playgroud)

这是否意味着默认启用OPcache?

php caching apc opcache

34
推荐指数
1
解决办法
4万
查看次数

我的OpCache在运行吗?

我正在尝试在我的服务器上启用opCache(ubuntu 12.04 LTS运行apache 2.4.7PHP Version 5.5.10-1+deb.sury.org~precise+1).

在开始做任何事情之前,我读了这篇高度相关的帖子,告诉我opCache默认是禁用的,我必须手动启用它.

我进入php.ini并发现没有文本opcache.so,也注意到与opcache相关的所有内容.像这样:

[opcache]
; Determines if Zend OPCache is enabled
;opcache.enable=0

; Determines if Zend OPCache is enabled for the CLI version of PHP
;opcache.enable_cli=0
Run Code Online (Sandbox Code Playgroud)

这没关系,因为这个人告诉它被禁用了.但是,当我查阅phpinfo();它时,向我显示以下内容(根据我的理解,它告诉我已经使用了opCache).

在此输入图像描述

我的opcache是​​否已启用并使用,如何查看/验证它?

php opcache

31
推荐指数
2
解决办法
5万
查看次数

APC - > APCu/OPCache,性能差

我有一个m3.xlargeEC2实例,我PHP 5.5.11今天更新了.

有了这个更新,它覆盖php55-pecl-apcphp55-pecl-apcu.

在阅读和实验之后,我的理解是APC已被替换OPCache,除了可以带回来的关键值存储APCu.

在将我的配置调整到看起来合理的东西之后,在登录时使用Wordpress现在非常慢,至少300-900ms更糟糕(前端通过清漆缓存,并且工作完美...但是当你使用管理员时故意不是缓存,而是作为罪恶缓慢).

我升级时做了一系列基准测试,每个步骤的样本量很小.随着我的继续,它的恶化程度越来越差.

  • APC(升级前) -->
  • OPCache +没有APCu -->
  • 用于APCu的OPCache + APCu + WP插件

现在我只是闲着OPCache,没有APCu.

  1. 我怎样才能达到相同的性能?我喜欢管理界面,我喜欢它有多快.老实说,我根本看不出这是一种改进,真的很令人沮丧......除非有一些我不知道的超级图书馆.它当然不是我拥有的,或者可能没有配置好.
  2. 假设#1的答案是'你把它配置成球',那么你会介意看看这个并看看这是否合理?

对于我的设置我使用最新的wordpress,一些大插件,但我不能把它们取下,因为它们很重要.幸运的是,清漆可以完成大部分工作.我的网站根目录有4个内核,16GB内存,~10k文件.我也没有真正的硬核应用程序或除了wordpress之外的任何东西,它是一个相当普通的设置.我认为这是可能有用的东西.

配置:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=0
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.max_wasted_percentage=5
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.revalidate_freq=0
opcache.revalidate_path=0
opcache.save_comments=0
opcache.load_comments=0
opcache.fast_shutdown=1
opcache.enable_file_override=0
opcache.optimization_level=0xffffffff
opcache.inherited_hack=1
opcache.dups_fix=0
opcache.blacklist_filename=/etc/php-5.5.d/opcache*.blacklist
opcache.max_file_size=2M
opcache.consistency_checks=1
opcache.force_restart_timeout=180
opcache.error_log=/var/log/php-fpm/5.5/opcache.log
opcache.log_verbosity_level=1
opcache.preferred_memory_model=
opcache.protect_memory=0
Run Code Online (Sandbox Code Playgroud)

php wordpress apc opcache

28
推荐指数
3
解决办法
2万
查看次数

Zend OPCache - opcache.enable_cli 1还是0?它有什么作用?

在文档中,它说"主要用于调试",这会让我觉得"除非你遇到问题并且需要做一些调试,否则永远不会启用它",但是阅读大部分我能找到的关于它的内容都说"启用它"opcache .enable_cli 1"但为什么?我找不到有关此事的任何信息,所以如果有人知道,如果文档基本上说保持0,我为什么要启用它?

php zend-cache opcache php-5.5

28
推荐指数
2
解决办法
2万
查看次数

PHP 7是否有兼容的内存缓存?

我想使用PHP 7.但似乎没有键值内存缓存的选项.

APC已停产.

一段时间后,XCache将无法用于PHP 7.

PHP 7有可用的替代方案吗?

或者有没有办法使用PHP7的Opcache来实现键值内存缓存?

php apc xcache opcache

28
推荐指数
4
解决办法
3万
查看次数

PHP OPcache优化级别 - 它们是什么?

有一个opcache.optimization_level php.ini指令.它是默认的位掩码0xffffffff- 因此默认情况下OPcache会执行所有优化.

OPcache做了哪些优化?传递字节码的是什么?

后续问题:OPcache可以很好地优化代码模式吗?例如,HHVM可以跳过仅包含类/函数声明的文件的执行,它只填充类/函数表.

php performance zend-framework opcache

27
推荐指数
1
解决办法
7729
查看次数

什么是用户空间缓存PHP中的APCu扩展?

大家好,只是一个与OPcache相关的问题,因为我不理解它并在Google上找到答案:

当我们谈论用户空间缓存时,它意味着什么?我知道PHP预先与新的Zend OPcache扩展捆绑在一起,并且这个扩展将操作代码缓存到ram中,以免过多地压缩处理器,该处理器应该在每次请求时转换为操作码的操作码,但是当APCu时他们说它实现了用户区域缓存?

什么是用户空间缓存?是否可以将APCu和Zend OPcache保持在一起?应该使用Zend OPcache而不是APCu吗?

感谢您的关注,希望有人能够澄清我的疑惑!

php opcache

25
推荐指数
1
解决办法
9479
查看次数