Size: a a a

Laravel для начинающих

2021 October 06

D

Dimases in Laravel для начинающих
мне не нужны очереди. мне из одного command надо пустить другой command, но узнать его pid положить в БД и не ждать, пока он выполнится
источник

V

Vladyslav in Laravel для начинающих
оно ж и без настроенных сработает) сразу вызов будет)
источник

D

Dimases in Laravel для начинающих
мне нужно как раз именно паралелльно
источник

SD

Sergey Donin in Laravel для начинающих
ну да, а вдруг у него в env какой нить database на очереди стоит , а так то да… мы тут не Нострадамусы
источник

R#

Reset # Alexey S. in Laravel для начинающих
по дефолту там sync
источник

D

Dimases in Laravel для начинающих
так что, без очередей нет никакой возможности методами лары пустить exec в бэкграунде?
источник

SD

Sergey Donin in Laravel для начинающих
тебе уже написали ->setTimeout() + ->start() . У меня сейчас как раз ровно такая задача как у тебя и это работает

проверь еще команду в консоли
источник

R#

Reset # Alexey S. in Laravel для начинающих
я ж скинул уже
источник

R#

Reset # Alexey S. in Laravel для начинающих
и Сергей вон выше тоже
источник

SD

Sergey Donin in Laravel для начинающих
это было для примера с dispatch(), но ты же очереди не хочешь
источник

R#

Reset # Alexey S. in Laravel для начинающих
Емае

$process->start();

if ($process->isRunning()) {
   // если процесс работает то тут выполняем логику, например
   $process->getPid();
}
источник

D

Dimases in Laravel для начинающих
проверил:
exec '/php/php73/bin/php' '-c' '/home/tst/web/cgi-bin/php73.ini' '/home/tst/web/laravel/artisan' 'command:tools-theard' '4'
с консоли все работает. выполняется. вот код целиком:
       $process = new Process(['/php/php73/bin/php','-c','/home/tst/web/cgi-bin/php73.ini', base_path() . '/artisan','command:tools-theard','4'],base_path());
       $process->setTimeout(0);
       $process->start();
       dump($process->getPid());

       // если этот код комментрую - command:tools-theard не выполняется
       foreach ($process as $type => $data) {
           if ($process::OUT === $type) {
               echo "\nRead from stdout: ".$data;
           } else { // $process::ERR === $type
               echo "\nRead from stderr: ".$data;
           }
       }

Какие-то чудеса.
источник

D

Dimases in Laravel для начинающих
вот так результата работы artisan command:tools-theard нет
источник

R#

Reset # Alexey S. in Laravel для начинающих
там можно строку запуска получить. может где слиплось что то
источник

R#

Reset # Alexey S. in Laravel для начинающих
ну и с простого начни. какой нить nano там запустить
источник

SD

Sergey Donin in Laravel для начинающих
для параллельности нескольких я использую Bus::batch Формирую пачку Batchable джобов с Process() внутри и  ->dispatch() пачки
источник

?

? in Laravel для начинающих
Покажи запрос в постмане
источник

D

Dimases in Laravel для начинающих
получаю, все там нормально
источник

R#

Reset # Alexey S. in Laravel для начинающих
я про компонент
источник

D

Dimases in Laravel для начинающих
даже так ничего не выполняет. lavarel.log пуст (info не срабатывает).
источник