我使用zend_shm_cache函数作为变量的快速存储。我的问题是,在TTL结束后,缓存似乎无法清除。例如:
zend_shm_cache_store( $key = 'test3', 'value', 2 );
foreach( range(1,5) as $timer ){
sleep( 1 );
echo $timer.' - ' .zend_shm_cache_fetch( $key ).'<br/>';
}
返回:
1 - value 2 - 3 - value 4 - value 5 - value
我希望缓存在第二秒后为空。你能解释一下发生了什么或提出解决方案吗?
答案 0 :(得分:1)
我在APCU的文档中得到了答案:
ttl过后,存储的变量将从中删除 缓存(在下一个请求中)。
由于我的代码只在一个请求中运行,因此即使缓存时间过期,也不会删除缓存。