command('task:scheduler') ->everyMinute() ->runInBackground() ->withoutOverlapping(); // Generate sitemap every 3 hours $schedule->command('sitemap:generate --queue') ->cron('0 */3 * * *') ->runInBackground() ->withoutOverlapping(); // Run task cleanup daily $schedule->command('task:scheduler --cleanup') ->daily() ->at('02:00') ->runInBackground() ->withoutOverlapping(); // Run session cleanup every hour $schedule->command('session:cleanup') ->hourly() ->runInBackground() ->withoutOverlapping(); // Process geocoding tasks hourly $schedule->command('geocoding:process --limit=20') ->hourly() ->runInBackground() ->withoutOverlapping(); // Process email queue every minute $schedule->command('email:process --batch=10') ->everyMinute() ->runInBackground() ->withoutOverlapping(); // Process document conversions every 5 minutes $schedule->command('documents:process --limit=10') ->everyFiveMinutes() ->runInBackground() ->withoutOverlapping(); } /** * Register the commands for the application. * * @return void */ protected function commands() { $this->load(__DIR__.'/Commands'); // Application commands $this->load(__DIR__.'/../RSpade/Commands'); // Framework commands require base_path('routes/console.php'); } }