我的 VPS 开始出现问题,无法为所有网站上的页面提供服务。它只是显示一个空白页面,或者提供下载 php 文件(幸运的是,代码不在下载文件中:))。服务器仍在运行,但这似乎是 PHP 的问题,因为我可以登录 WHM。

如果我重新启动 apache,这些网站就会再次工作。

在与服务器支持人员进行一些交谈后,他们告诉我这是 APC 扩展的问题,他们认为这是旧的,不推荐用于生产服务器。所以他们暂时将其删除,看看是否还会继续出现同样的故障。

我没有在任何地方读到过 APC 可能存在一些问题,或者并不总是建议使用它,恰恰相反......到处都有人说要永远使用它。

APC扩展是通过ssh安装的,并且是最新版本。

编辑:他们也不推荐 MemCache,并表示更可靠的扩展是 eAccelerator

有帮助吗?

解决方案

庵APC是当前技术和几乎是必须的任何高性能PHP站点。

不仅如此,但它会船为标准在PHP 6(而不是一个可选模块像现在是)。

我不知道你的问题是什么/是,但它没有被APC或过时的旧技术。

其他提示

我跑几个服务器自己,并试图与Zend Optimizer的同时运行它时,我曾经有过麻烦的APC唯一一次。他们不一起工作,所以如果我必须使用优化(例如,如果一些商业,第三方的代码需要它)我eAccelerator在运行,而不是APC。一个有效的6,另一半打,当涉及到性能,但我真的怀疑APC这里的问题。

我想补充,Memcached是只打算,如果你正在运行的需要访问共享数据高速缓存的多台服务器给你受益匪浅。分布式缓存不执行操作码等缓存APC / eAccelerator在/了XCache /等

问题与 APC 无关。如果 APC 出现问题,它要么会显示在您的 php 日志文件中,要么您在调整 APC 之前根本无法访问您的网站。问题更可能出在 apache 本身。我之前也遇到过和你一样的空白页面问题,这与 mod_security 的发挥和阻止发送看起来“可疑”的页面有关。另外,apache 中的内存使用情况很容易导致服务器在负载下崩溃。我也有过使用 web 主机的经验,该主机编译了 apache 并出现内存泄漏,因此每 X 数量的请求(比如 100,000)服务器就会崩溃!最烦人的。

您的网络托管商听起来并不是最有能力的,因为他们给出了一些糟糕的建议,很可能是基于无知。

APC 应该在生产中使用(在生产中关闭 mstat 检查,但在开发中打开)。您可以通过加载附带的 apc 状态文件来获取有关 apc 设置的更多统计信息,然后您将获得如下所示的漂亮页面: http://drupal.org/files/images/APC%20Status-1.png

Memcache 的使用非常频繁,因为它也是分布式的!其用途如下:

  1. APC 是最快的,因为它与 php 的工作方式最接近,但只能在执行 PHP 本身的同一台服务器上工作,因此它的使用仅限于该范围。主要用作操作码缓存。

  2. Memcache 就像一个非常快速的数据库,分布在作为一个单元运行的许多计算机上。然而,停电就会抹去很多东西!因此,它们被大量用于消除持久数据库的压力。Facebook 和许多其他网站都有数百台运行内存缓存的服务器。

我的建议是找到一个了解 PHP 的网络主机。与网络主机作战是一场关于谁对谁错的艰苦工作...直到找到一个好的为止;)

听起来好像他们正在推动一个产品,他们可能会对转诊回扣。

我跑我自己的服务器(有一段时间),我从来没有过这样的问题,没有任何的主要与memcache的问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top