У меня есть три работы в моей очереди;
Число повторов для одного из них установлено на 100.
Когда все мои задания терпят неудачу, Laravel запускает задания по следующей схеме;
а потом;
Я хочу изменить это поведение как следующую схему;
Поэтому я хочу, чтобы предыдущие задания блокировали тик, они достигают количества повторов и затем переходят к следующей работе.
Как я могу добиться этого с системой Laravel Job?
(Я не могу связать задания на своем программном уровне с помощью метода цепочки. Я хотел бы добиться этого с помощью конфигурации)
Если это задание, вы не можете управлять другим заданием из этого … Задания работают асинхронно. Вы должны сделать вещи синхронно 🙂
Так что или вы все переводите на одну работу, или вы не можете сделать это по-другому 🙂
Конечно, вы можете называть свои очереди, работать с определением их приоритетов и настраивать только 1 работника … Но это не очень хороший вариант, и вы не можете справиться с этим 🙂
Кроме того, вы можете уволить работу после выполнения одной работы. Просто переместите создание задания из вашего контроллера (?) В задание после финиша. Я реализовал это решение в своей системе. Только если одна работа сделана, то следующая стрельба
Вы могли бы использовать Работа События контролировать последовательность, в которой они помещаются в очередь. После успешного завершения задания A задание B запускается через прослушиватель событий, то же самое для задания C. Задание A может повторяться 100 раз без возможности запуска задания B.