Александр Михайленко, это проблемы вашей архитектуры, но если переделать под очередь задач не получается, то попробуйте писать в конце выполнения каждой джобы в кеш/редис счетчиком. Насколько я помню, он там атомарный. \Cache::increment('key');
И просто в конце каждой джобы прописать код
\Cache::increment('key');
if (\Cache::has('key') and \Cache::get('key') >= 4)
{
$model->status = 'done';
$model->save();
}
Грубо говоря как-то так.
Если задач N можете рядом еще положить в кеш число с которым проверять, а не константное 4.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
\Cache::increment('key');
И просто в конце каждой джобы прописать код
Грубо говоря как-то так.
Если задач N можете рядом еще положить в кеш число с которым проверять, а не константное 4.