laravel 队列

什么是队列,队列用来干什么的这里不再介绍!

这里使用数据库作为驱动,php artisan queue:table ,php artisan queue:failed-table,创建队列表

php artisan make:job SendReminderEmail ,创建队列任务类,所有的事情全部在 SendReminderEmail中的handle 方法中来处理!

分发任务

dispatch(new Job); 这样便会发送任务出去,

最后是使用任务监听,执行任务  php artisan queue:listen

延迟分发

  use Carbon\Carbon;

  $jobs = (new App\Jobs\TestJob())->delay(Carbon::now()->addMinutes(1)); dispatch($jobs); 这里需要注意的是在实例化类的时候就执行延长!

在SendReminderEmail handle中处理需要处理的需求,在 SendReminderEmail  failed(Exception$exception){}这里处理失败的情况!

对于指定连接,超时,重试等官网很详细,这里不再说!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 步骤: 驱动选择在.env环境中修改QUEUE_DRIVER=database来实现 定义任务 分发任务 启动队列...
    小慕先森阅读 361评论 0 0
  • 使用场景:处理一些耗时或者高并发的操作,把操作放到队列中异步执行,可以有效缓解系统压力、提高系 统响应速度和负载能...
    Uzero阅读 452评论 0 0
  • 队列使用步骤1.迁移队列需要的数据表2.编写任务类3.推送任务到队列4.运行队列监听器5.处理失败的任务 使用1....
    sunnyye阅读 405评论 0 0
  • 问题 公司项目使用Laravel的开发的两个项目在同一个测试服务器部署,公用同一个redis。在使用laravel...
    Dr點燃阅读 1,636评论 2 9
  • 时光老人总是悄悄地从身边走过,从来不会告诉你,也不会提醒你,也不会为谁而停留。所以我们总会惋惜,可是昨日已去不复返...
    m遗失的美好阅读 250评论 0 1