【发布时间】:2011-08-07 04:38:24
【问题描述】:
我希望有人能帮我解决这个问题。我最近在一些只托管一个应用程序的服务器上运行 APC,它运行良好。不幸的是,我今晚在我的主力网络服务器上运行它,一旦我打开它,我就开始从我的 wordpress 博客中获得“混合”。第一个加载的博客会缓存数据库信息,之后加载的每个博客都会出现数据库错误。
我想知道是否有办法以某种方式前缀缓存,这样我就可以避免这个问题。我假设缓存会尊重文件之间绝对路径的差异,而不是在多个站点上使用相同的缓存副本...失败
提前致谢!
更新
这里要求的是我在 /etc/php.d/ 中用来覆盖默认设置的 apc.ini 文件的副本:
/etc/php.d/apc.ini
extension=apc.so
apc.shm_size = 64M
apc.max_file_size = 8M
apc.include_once_override = 1
apc.stat_ctime = 1
【问题讨论】:
-
没用过APC,但是在memcached中可以设置前缀。我们通常设置一个干净的 url 作为前缀。我相信 APC 也有。
-
@JohnP: "你可以设置前缀" --- 嗯,怎么样?
-
@zerkms 抱歉,我忘了我们使用的是 Zend ^_^ 前缀是在包装器中设置的。 脚>
-
啊,我的希望就在那里。好吧,我已经禁用了 APC,直到我弄明白为止。我在一个非常精简的服务器上运行它,因此操作码缓存将是一个巨大的好处,因为这些主要是静态站点和/或 wordpress 博客。任何帮助表示赞赏!
-
重要提示:您看到的是 user 缓存条目还是 system 缓存条目的混合?如果混合了用户缓存条目,则需要修改用户代码以在所有调用前加上站点特定的标识符。如果您发现 system 缓存条目有问题,请确保 APC 没有填满。如果缓存已满,我会经常看到 APC 损坏问题。使用捆绑的
apc.php脚本检查利用率,如果您填充了缓存/片段,则增加您的 APC 内存限制。
标签: php apc virtualhost opcode