Articles › Queues
TAG ARCHIVE

Everything on Queues.

19 articles tagged Queues, sorted newest first.

laravel

Scale Laravel Queue Workers to Zero and Back with KEDA

A worker blocked on Redis uses no CPU, so the HPA never scales it. Here is the KEDA ScaledObject that scales on queue depth instead — including scale-to-zero and the shutdown config that stops Kubernetes killing jobs.

11 min read →
php

PHP 8.6's Time\Duration: No More Guessing Whether That Timeout Is Seconds or Milliseconds

PHP 8.6 ships Time\Duration, a nanosecond-precision value object for stopwatch time. Here's the whole API, where it beats DateInterval, and how to bolt it onto a Laravel app whose framework still wants ints.

8 min read →
laravel

The Job That Ran Before the Row Existed: Dispatching Inside Laravel Transactions

A queued job throws ModelNotFoundException for a row that plainly exists. It is not a bug in the job — it is a worker that got there before your transaction committed.

9 min read →
laravel

Laravel Read Replicas: Route Reads to a Follower Without Serving Stale Data

The read/write split is four lines of config. The read-after-write bugs that turn up a fortnight later are the actual work — and sticky only covers one of them.

11 min read →
ai

Generate Speech from Text in Laravel with the AI SDK's Audio Class

The Laravel AI SDK turns text-to-speech into four lines and hands you a Storage path instead of a byte string. Here is the whole surface — voices, queueing, serving — plus the hash cache that stops you paying twice for the same sentence.

10 min read →
laravel-ai-sdk

Transcribe Audio in Laravel with the AI SDK: Uploads, Storage and Speaker Diarization

Transcription ships in the Laravel AI SDK with queueing, diarization and faking built in. Almost nobody knows it's there, so here's the whole path.

8 min read →
devops

Migrate a Laravel App from Redis to Valkey Without Changing a Line of Code

A Laravel Valkey migration runbook: what actually differs, how to move the persisted data instead of cold-starting, and how to sequence cache, sessions and queues so a mistake costs a cache miss rather than a lost job.

13 min read →
devops

Add a Docker HEALTHCHECK to a Laravel Queue Worker Container

A worker container reports Up 3 days while the queue backs up. Here's how to give Docker a real liveness signal for queue:work and Horizon.

8 min read →
laravel

Keep Laravel Queue Workers Alive with Supervisor in Production

A hand-started queue worker dies on the first fatal error or reboot. Here's the Supervisor config that keeps php artisan queue:work running for good.

5 min read →
laravel

Run Laravel AI SDK Agents in the Background with Queued Jobs

A synchronous AI call can tie up a PHP worker for half a minute. Here's how to run Laravel AI SDK agents on a queue and surface the result when it's done.

7 min read →
laravel

Laravel Context: Request Data That Follows Your Logs and Jobs

Stop threading a request ID through every log call. Laravel Context sets it once in middleware and follows the request into every queued job it dispatches.

6 min read →
laravel

Laravel Job Middleware — Rate-Limit and Back Off Queued Jobs at the Job Level

Stop sprinkling RateLimiter::attempt() inside your job classes. Laravel job middleware wraps handle() with rate limits, back-off, and circuit breakers — here's the full pattern.

8 min read →
filament

Filament v4 Import and Export Actions: Built-in Bulk CSV Without a Plugin

A walkthrough of Filament v4's first-party ImportAction and ExportAction: Importer columns, the queued batch, failed-rows CSV, and the dialect tweaks Excel needs.

13 min read →
laravel

Laravel Queue Chains vs Batches: When to Pick Which

Bus::chain and Bus::batch solve different queue problems. Here's the decision framework and the combinations I reach for in production.

10 min read →
laravel

Clean Up Your Jobs Config With Laravel 13's Queue::route()

Laravel 13 adds Queue::route(): a single place in your service provider to declare which queue and connection every job class uses. Here's how it works.

6 min read →
laravel

Upgrading From Laravel 12 to Laravel 13: The Practical Guide

The Laravel 13 upgrade is mostly painless: but three config areas will silently change how your app behaves if you skip them. Here's what actually changed and what's worth adopting.

7 min read →
laravel

Stop Laravel Queue Workers from Leaking Memory with --max-jobs and --max-time

Laravel queue workers are long-running daemons: and daemons drift. Here's how to configure them to self-restart before they start misbehaving.

5 min read →
laravel

Scaling Laravel queues in production: Horizon, Redis, and multi-server workers

Queue tutorials stop at dispatch and queue:work. Here is everything else: the architecture, Horizon configuration, failure handling, and multi-server scaling that keeps production queues healthy under real traffic.

16 min read →
laravel

Monitoring Laravel queues in production with Horizon

Most teams install Horizon and leave it at its defaults. Here's the production configuration that actually gives you visibility into your queues.

6 min read →