<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m" -->

---
title: Pause All Laravel Queues During a Deploy | daily.dev
description: Laravel 13.25 introduces queue:pause --all and queue:resume --all commands along with Queue::pauseAll() and Queue::resumeAll() facade methods, allowing every...
canonical: https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Pause All Laravel Queues During a Deploy | daily.dev
og:description: Laravel 13.25 introduces queue:pause --all and queue:resume --all commands along with Queue::pauseAll() and Queue::resumeAll() facade methods, allowing every...
og:url: https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m
og:image: https://api.daily.dev/og/posts/3ZF2Tm45M.png
og:image:alt: Pause All Laravel Queues During a Deploy
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Pause All Laravel Queues During a Deploy

**[Laravel News](https://daily.dev/sources/ln)** · 3 min read · 0 upvotes · 0 comments

## Summary

Laravel 13.25 introduces queue:pause --all and queue:resume --all commands along with Queue::pauseAll() and Queue::resumeAll() facade methods, allowing every worker on every connection to stop reserving new jobs without triggering maintenance mode. A paused queue lets in-flight jobs finish and doesn't block dispatchers from writing new jobs, which just queue up until resumed. The mechanism uses a single forever-cached key checked alongside existing per-queue pause and restart signals, adding no extra overhead. Individual queue pauses and the global pause are independent: resumeAll() won't undo a queue that was paused individually. Two new events, QueuesPaused and QueuesResumed, fire alongside the existing per-queue events.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://laravel-news.com/laravel-pause-all-queues>

## Questions this post answers

### How do I pause all Laravel queues during a deploy without using maintenance mode?

Run php artisan queue:pause --all, added in Laravel 13.25, which stops every worker on every connection from reserving new jobs while leaving HTTP traffic untouched. Undo it with php artisan queue:resume --all. The same behavior is available via Queue::pauseAll() and Queue::resumeAll() on the Queue facade for deploy scripts written in PHP.

_daily.dev surfaces framework release notes like this for developers hardening their deploy scripts._

### Does pausing a Laravel queue with queue:pause --all interrupt jobs that are already running?

No, a job already being processed when the queue is paused runs to completion. The worker process stays alive and keeps looping, it just sleeps instead of popping new jobs, and dispatchers like SomeJob::dispatch() keep writing to the queue's storage backend, so jobs simply accumulate until resumed.

_Developers debugging deploy-time job failures track these mechanics through daily.dev._

### If I pause a specific Laravel queue individually, will queue:resume --all resume it too?

No, individual pauses and the global pause write separate cache keys and are deliberately unaware of each other, so Queue::resumeAll() leaves an individually paused queue still paused. Clearing that pause requires the specific command, such as queue:resume redis:imports, ensuring a deploy script's resumeAll() doesn't undo someone else's manual pause.

_daily.dev helps developers relying on Laravel queues keep deploy automation and manual overrides from colliding._

## Similar posts on daily.dev

- [Queue-Wide Inspection Methods in Laravel 13.8.0](https://daily.dev/posts/queue-wide-inspection-methods-in-laravel-13-8-0-hgzecxgmv) · Laravel News · 19 upvotes · 0 comments
- [Queue::forward\(\): Reroute Laravel Queues in One Place](https://daily.dev/posts/queue-forward-reroute-laravel-queues-in-one-place-evip2ulex) · Laravel News · 10 upvotes · 1 comments

---

Tags: [#cicd](https://daily.dev/tags/cicd), [#php](https://daily.dev/tags/php), [#laravel](https://daily.dev/tags/laravel)

[View this post on daily.dev](https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Pause All Laravel Queues During a Deploy","url":"https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m"},"datePublished":"2026-08-13T13:39:02.668Z","dateModified":"2026-08-13T13:40:18.218Z","description":"Laravel 13.25 introduces queue:pause --all and queue:resume --all commands along with Queue::pauseAll() and Queue::resumeAll() facade methods, allowing every...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/c3ecd9cf96fbc0eb1986038d9a5d6177?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/c3ecd9cf96fbc0eb1986038d9a5d6177?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Laravel News","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Laravel News","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/ln","url":"https://daily.dev/sources/ln"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"cicd,php,laravel","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Laravel News","item":"https://daily.dev/sources/ln"},{"@type":"ListItem","position":3,"name":"Pause All Laravel Queues During a Deploy"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/pause-all-laravel-queues-during-a-deploy-3zf2tm45m#faq","mainEntity":[{"@type":"Question","name":"How do I pause all Laravel queues during a deploy without using maintenance mode?","acceptedAnswer":{"@type":"Answer","text":"Run php artisan queue:pause --all, added in Laravel 13.25, which stops every worker on every connection from reserving new jobs while leaving HTTP traffic untouched. Undo it with php artisan queue:resume --all. The same behavior is available via Queue::pauseAll() and Queue::resumeAll() on the Queue facade for deploy scripts written in PHP. daily.dev surfaces framework release notes like this for developers hardening their deploy scripts."}},{"@type":"Question","name":"Does pausing a Laravel queue with queue:pause --all interrupt jobs that are already running?","acceptedAnswer":{"@type":"Answer","text":"No, a job already being processed when the queue is paused runs to completion. The worker process stays alive and keeps looping, it just sleeps instead of popping new jobs, and dispatchers like SomeJob::dispatch() keep writing to the queue's storage backend, so jobs simply accumulate until resumed. Developers debugging deploy-time job failures track these mechanics through daily.dev."}},{"@type":"Question","name":"If I pause a specific Laravel queue individually, will queue:resume --all resume it too?","acceptedAnswer":{"@type":"Answer","text":"No, individual pauses and the global pause write separate cache keys and are deliberately unaware of each other, so Queue::resumeAll() leaves an individually paused queue still paused. Clearing that pause requires the specific command, such as queue:resume redis:imports, ensuring a deploy script's resumeAll() doesn't undo someone else's manual pause. daily.dev helps developers relying on Laravel queues keep deploy automation and manual overrides from colliding."}}]}
```

