我有一个与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
答案 0 :(得分:0)
您是否尝试过使用apc_clear_cache? 您是否尝试过Zend OpCache(适用于PHP 5.2及更高版本)?那个人有更多precise functions来管理您的缓存。
答案 1 :(得分:0)
据我了解,当PHP在CLI模式下运行并且作为apache模块运行时,APC有单独的缓存。
可能是您的cron作业“正常”工作,但是他们正在访问与您的应用程序正在使用的缓存不同的缓存(APC CLI缓存)。