I am using Laravel schedule to run cron jobs.
In my crontab I have added (with correct path to my project):
* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1
Now my App\Console\Kernel.php looks like:
protected function schedule(Schedule $schedule)
{
$schedule->command('investments:calculate_interests')->everyMinute();
$schedule->call('\App\Http\Controllers\UsersController@testEvent')->everyMinute();
}
Using it like that I successfully run jobs every minute. But how I can change it to run them on every 10 or 20 or 30 seconds?
I solve with this for per second :
and in cron table add command of this.
It's not working like Alexey Mezenin suggested, but he gave me an idea where to test some solutions.
You can add loop with timer not to
but direct into the command / event or other what you want to loop.
For example, I was running a command, so inside the command I added:
And now my command works every 30 seconds.