企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# Queue介绍 Easyswoole封装实现了一个轻量级的队列,默认以Redis作为队列驱动器。 可以自己实现一个队列驱动来实现用kafka或者启动方式的队列存储。 从上可知,Queue并不是一个单独使用的组件,它更像一个对不同驱动的队列进行统一封装的门面组件。 # 开始安装 ~~~ composer require easyswoole/queue ~~~ # 使用流程 * 注册队列驱动器 * 设置消费进程 * 生产者投递任务 ## Redis 驱动示例 ~~~php use EasySwoole\Redis\Config\RedisConfig; use EasySwoole\RedisPool\RedisPool; use EasySwoole\Queue\Driver\Redis; use EasySwoole\Queue\Queue; use EasySwoole\Queue\Job; $config = new RedisConfig([ 'host'=>'127.0.0.1' ]); $redis = new RedisPool($config); $driver = new Redis($redis); $queue = new Queue($driver); go(function ()use($queue){ while (1){ $job = new Job(); $job->setJobData(time()); $id = $queue->producer()->push($job); var_dump('job create for Id :'.$id); \co::sleep(3); } }); go(function ()use($queue){ $queue->consumer()->listen(function (Job $job){ var_dump($job->toArray()); }); }); ~~~