Apache 2.2、PHP5 和 APC

Apache 2.2、PHP5 和 APC

我读到,APC 导致 Apache 抛出段错误。

此错误仍然有效吗?我之所以问这个问题,是因为我们有一个在当地集市上使用的 Web 应用程序 (PHP),目前使用量很大。

我们的内存消耗没有问题(目前使用了 8GB 中的 1GB),但是 CPU 使用率相当高。

操作码缓存是否有助于降低 CPU 使用率?或者我应该增加 apache 分支的数量?

答案1

操作码缓存可能有助于减少一些 CPU 负载,因为它确实被定义为增加响应时间,因为所有的解释都已经完成。有些事情需要看一下:

  • 代码的哪些部分耗费时间?是否可以进行优化?
  • 应用程序是否数据库密集型并且查询是否可以优化?

当应用程序处于负载状态时,apachetop 显示什么?所有线程都在使用吗?如果是这样,那么您肯定应该设置更多线程。

答案2

如今,APC 几乎是 PHP 的默认操作码缓存。

使用操作码缓存可以减少 CPU 的使用率,在脚本复杂的情况下实际上会减少很多。

创建更大的工作池(即您所说的“分叉数量”)不会减少 CPU 使用率,但如果您的服务器确实很忙,它可能会减少延迟。

相关内容