redis setex过期事件监听
更改redis的配置项
这里需要配置 notify-keyspace-events 的参数为 “Ex”。
x 代表了过期事件。notify-keyspace-events “Ex” 保存配置后,重启Redis服务,使配置生效。
public function index() {
if (is_cli() == FALSE) exit;
ini_set('default_socket_timeout', -1);
$redis = new RedisService();
$redis->select('15');
$redis->setOption(\Redis::OPT_READ_TIMEOUT, -1);
$redis->psubscribe(array('__keyevent@15__:expired'), function ($redis, $pattern, $channel, $msg) {
log_message('info', 'task---------------' . $msg);
});
}
监听过期事件的方法,通过linux的nohup php index.php task2 index &指令运行在服务器后台来监听。

浙公网安备 33010602011771号