Запустите задание Lronvel cron в фоновом режиме - Laravel 5.8 - PullRequest
0 голосов
/ 04 июля 2019

У меня есть работа cron с Laravel:

    public function handle(){
    $reimport = $this->argument('reimport');

    $lib = new CustomLibrary();

    $lib->importAll();

}

Я вызываю это в моем контроллере:

Artisan::call('my_command');

или SSH:

php artisan my_command

Проблема заключается в том, что в обоих местах работа не выполняется в фоновом режиме, потому что для ее завершения требуется больше минуты.

Есть ли способ заставить это задание запускаться в фоновом режиме в контроллере и в SSH (необязательно)?

1 Ответ

0 голосов
/ 05 июля 2019

Чтобы запустить сам планировщик Laravel, нам нужно добавить только одно задание Cron, которое выполняется каждую минуту.Перейдите в свой терминал, перейдите по ssh на ваш сервер, перейдите в ваш проект и выполните эту команду.

crontab -e

Откроется файл Crontab сервера, вставьте приведенный ниже код в файл, сохраните и выйдите из него.

* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1

Не забудьте заменить / path / to / artisan на полный путь к команде Artisan вашего приложения Laravel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...