mc0 / okq
okq持久队列的PHP驱动
dev-master
2016-02-27 16:57 UTC
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2024-10-02 09:39:21 UTC
README
okq持久队列的okq PHP驱动。
okq使用redis协议和调用约定作为其接口,因此任何标准redis客户端都可以用来与之交互。然而,这个包封装了普通的redis驱动,以便提供便捷的接口进行交互。具体来说,它为事件消费者创建了一个简单的接口,以便他们通过通道检索事件,而不是每次都手动实现该逻辑。
用法
okQ的命令实现在Okq
类中,其参数与okQ命令本身的参数相似。Okq
类扩展了phpredis/Redis,可以使用相同的参数进行构造
$q = new Okq(); $q->connect('127.0.0.1', 4777);
然后,只需运行命令即可添加作业!
$event = array('test' => 1); $eventId = '233'; // this can also be null and will be generated $success = $q->qlpush('testQueue', json_encode($event), $eventId);
如果您是消费者,可以直接使用便利的consume
方法。
/* the $callback can be any callable: - array('StaticClass', 'funcName') - array($obj, 'funcName') - 'funcName' - create_function('$event', '...') */ $callback = function ($event) use ($q) { // do anything or nothing at all return Okq::EVENT_ACK; }; $timeout = 30; $q->consume($callback, array('testQueue'), $timeout);