laravel如何执行超长时间代码

laravel如何执行超长时间代码

一、总结

一句话总结:

laravel可以用【自定义队列】执行超长时间代码,并且【expire设置为0】
'cust' => [
    'driver' => 'redis',
     'connection' => 'queue',
    'queue' => 'cust',
    'expire' => 0,
],

二、laravel如何执行超长时间代码

转自或参考:https://learnku.com/laravel/t/28377

(一)、需求

1. 后台执行,并且可以随时查询执行进度.
2. 这个超长时间 可能是 5 分钟或者 1 个小时.

需求主要是从网站后台 web 方式点击执行,让其可以在后台运行,这样我 web 可以关闭,后期随时来查看执行状态

(二)、解决

自定义队列


估计要采用自定义 queue,supervisor 单独运行一个

php artisan queue:work --queue=cust ... 这样就可以和其他的队列区分开了

然后代码里
dispatch((new Job)->onQueue('cust'));



config/queue.php 里面设置这个多 queue
'cust' => [
    'driver' => 'redis',
     'connection' => 'queue',
    'queue' => 'cust',
    'expire' => 0,
],

 
我的旨在学过的东西不再忘记(主要使用艾宾浩斯遗忘曲线算法及其它智能学习复习算法)的偏公益性质的完全免费的编程视频学习网站: fanrenyi.com;有各种前端、后端、算法、大数据、人工智能等课程。
博主25岁,前端后端算法大数据人工智能都有兴趣。
大家有啥都可以加博主联系方式(qq404006308,微信fan404006308)互相交流。工作、生活、心境,可以互相启迪。
聊技术,交朋友,修心境,qq404006308,微信fan404006308
26岁,真心找女朋友,非诚勿扰,微信fan404006308,qq404006308
人工智能群:939687837

作者相关推荐

原文地址:https://www.cnblogs.com/Renyi-Fan/p/14492632.html