APC - 使用cron作业清除缓存

时间:2013-12-06 00:30:49

标签: php caching cron apc

我有一个与Apache一起运行的系统 - 启用了APC并且启用了SLI

我的意图:

我使用几个crons来更新内容,一旦这个cron发生,它也会清除与这些更新相关的某些缓存。 当我使用curl打开文件时,这一切都运行正常但我决定通过在配置中启用APC SLI来切换到通过cron本身。

问题: cron工作得非常好,没有任何错误也没有,但是它没有清除缓存,是否有某些与此相关的代码如果我想在SLI中使用它而不是卷曲?

这是代码:

$deletesallupdates = new APCIterator('user', '/^USER.updates/', APC_ITER_VALUE);
apc_delete($deletesallupdates);

我的APC配置:

[APC]
extension = apc.so
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 1024M
apc.max_file_size = 2M
apc.stat = 1
apc.enable_cli = 1

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用apc_clear_cache? 您是否尝试过Zend OpCache(适用于PHP 5.2及更高版本)?那个人有更多precise functions来管理您的缓存。

答案 1 :(得分:0)

据我了解,当PHP在CLI模式下运行并且作为apache模块运行时,APC有单独的缓存。

可能是您的cron作业“正常”工作,但是他们正在访问与您的应用程序正在使用的缓存不同的缓存(APC CLI缓存)。