Php Laravel-调度大型任务
尝试在Laravel中运行一个相当大的函数,从Google Places API获取大量数据,并将部分内容作为新条目存储在表中的数据库中。问题是,它会自动为我在当前条目附近发现新条目,从而创造更多的就业机会 当我通过GET访问命令时,它最终超时。我试着用Redis将其作为一个预定命令运行,但坦率地说,我似乎不知道它是如何工作的。我已经创建了一个作业,我尝试使用dispatch将其排队,但它现在尝试立即运行它,最终再次超时 如何在不暂停整个服务器的情况下运行此大型任务 谢谢Php Laravel-调度大型任务,php,laravel,scheduled-tasks,Php,Laravel,Scheduled Tasks,尝试在Laravel中运行一个相当大的函数,从Google Places API获取大量数据,并将部分内容作为新条目存储在表中的数据库中。问题是,它会自动为我在当前条目附近发现新条目,从而创造更多的就业机会 当我通过GET访问命令时,它最终超时。我试着用Redis将其作为一个预定命令运行,但坦率地说,我似乎不知道它是如何工作的。我已经创建了一个作业,我尝试使用dispatch将其排队,但它现在尝试立即运行它,最终再次超时 如何在不暂停整个服务器的情况下运行此大型任务 谢谢 扎克 我非常简单,您
- 扎克
* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
课堂示例:
namespace App\Console;
use DB;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands = [
//
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule)
{
$schedule->call(function () {
DB::table('recent_users')->delete();
})->daily();
}
}
更多:
关于laravel日程安排的精彩视频:我现在如何让它运行?我已经研究了调度器,坦率地说,我现在正在使用它,它并没有在这个视频中一步一步地运行,只是简单地解释了一下:是的,您只是设置了调度器任务,您不需要artisan命令:$schedule->call(函数(){DB::table('recent_users')->delete();}->daily();你处理好了吗?我在底部使用了你的解决方案,创建了一个新的artisan命令,谢谢!