TGViewer
WebCraft - ремесло веб разработки WebCraft - ремесло веб разработки @web_craft · 5.02K subscribers
Post #3756 1.11K
Параллельное выполнение заданий в очередях

В Laravel задания (jobs) по умолчанию обрабатываются последовательно. Но иногда требуется запустить несколько заданий параллельно и дождаться их выполнения перед продолжением логики. Для этого используется метод Bus::batch().

Batch позволяет объединить набор заданий в "пакет", запускать их одновременно и отслеживать статус выполнения всего набора. Это особенно полезно, если нужно обработать много однотипных задач (например, экспорт данных или массовую отправку уведомлений).

use Illuminate\Bus\Batch;
use Illuminate\Support\Facades\Bus;
use Throwable;

Bus::batch([
new ProcessPodcast(1),
new ProcessPodcast(2),
new ProcessPodcast(3),
])->then(function (Batch $batch) {
// Все задания выполнены успешно
})->catch(function (Batch $batch, Throwable $e) {
// Какое-то из заданий завершилось ошибкой
})->finally(function (Batch $batch) {
// Выполнится в любом случае
})->dispatch();


👉 @web_craft | #laravel
  • 🔥 4
  • 👍 2
More from @web_craft
  1. Sep 30, 2026Post #3898
  2. Sep 18, 2026Собрали статический сайт. А дальше что? Привычные хостинги для статических сайтов вроде Cl…
  3. May 11, 2026Scroll-driven анимации в CSS постепенно выходят на новый уровень. Раньше для анимаций при…
  4. Jan 9, 2026Post #3797
  5. Jan 9, 2026Параллельное выполнение заданий в очередях Какой метод в Laravel позволяет объединять зада…
  6. Dec 5, 2025И он терпит наши глупости и мы его глупости тоже потерпим. 👉 @web_craft |#юмор
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →