Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Прочитал кучу статей на заданную тему, но так и не понял, что, зачем и почему... Может кто-нибудь нормальным языком, как для дебила, рассказать, что нужно делать?
Есть, допустим, routes/api.php, где
Route::get ('/method1/{param}', 'SwController@m1');
...
Route::post('/method4', 'SwController@m4');
...
Есть SwController.php, где
public function m1 () { return Sw::method1($param); }
...
public function m4 (Request $request) { return Sw::method4($request->post()); }
...
ну и сама модель Sw, где в методах расписана сама логика
Допустим, api/method4 отрабатывает долго, минут 7 (там есть таймауты, так задумано, не надо предлагать оптимизацию). Соответственно, вызов последующего метода api/method1 будет ждать завершения предыдущего...
Если я хочу очереди, то надо в .env поменять драйвер очереди, создать таблицу БД для задач, сделать миграцию.
Ок,
QUEUE_DRIVER=database
php artisan make:job SwJob
php artisan queue:table
php artisan migrate
сделал...
Дальше начинаются вопросы... Надо в SwJob затолкать логику метода? Одного? Или как? Для каждого метода API создавать отдельный job? В контроллере вместо return сделать SwJob::dispatch()? Как быть с передаваемыми параметрами?
Прошу помощи...
Не в сети
Страницы 1