Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Iron Queue Laravel Package

laravelcollective/iron-queue

IronQueue is a Laravel queue driver for IronMQ (Iron.io). It lets Laravel applications push, receive, and process queued jobs through IronMQ using the familiar Laravel queue API, making it useful for cloud-hosted background job processing.

View on GitHub
Deep Wiki
Context7

IronMQ support for the Laravel queue.

Frequently asked questions about Iron Queue
How do I install laravelcollective/iron-queue in Laravel?
Install it with composer require laravelcollective/iron-queue. On Laravel 5.5 and later the service provider is auto-discovered; on older versions add it to config/app.php and register the queue driver. Then add an ironmq connection block with project, token, host, queue, and retry_after values. Because the package targets old illuminate/* and Guzzle constraints, verify Composer resolves against your PHP, Laravel, and Guzzle versions before committing.
Which Laravel versions does laravelcollective/iron-queue support?
The package targets Laravel 5.x and Lumen from the PHP 7.x era. Its Composer constraints are built around illuminate/* 5.x and the iron-io/iron_mq SDK, so modern Laravel versions with Guzzle 7 or PHP 8 typically will not resolve without changes. Treat it as a fork-and-port project on Laravel 9 or newer, not a drop-in install.
Is laravelcollective/iron-queue still maintained?
No. The repository is archived, the last release was in October 2018, and there is no active maintainer handling compatibility or security updates. Any production use means you own the maintenance burden for both the driver and its archived IronMQ SDK. Pin it and vendor the source into a private repository if you must keep it running.
How do I configure an IronMQ queue connection in Laravel?
Add an ironmq entry to the connections array in config/queue.php using driver ironmq, plus project, token, host, queue, and retry_after keys. Set the default connection or dispatch explicitly with onConnection('ironmq'). The retry_after value must be tuned against IronMQ's reservation timeout to avoid duplicate job execution. Register the service provider manually on older Laravel versions or in Lumen's bootstrap/app.php.
Why do my IronMQ queue jobs run twice in Laravel?
Duplicate execution usually means retry_after is shorter than the maximum job runtime, so IronMQ reserves the job again while the first worker is still processing it. Tune retry_after above your longest expected job duration and keep it aligned with IronMQ's reservation timeout. Because this driver was written against Laravel 5.x internals, modern queue retry and visibility behavior may not map cleanly, so test duplicate-delivery scenarios explicitly.
Does laravelcollective/iron-queue work with Laravel 8 or Laravel 9?
No, not without modification. The package constraints target illuminate/* 5.x and the archived iron-io/iron_mq SDK, which commonly conflicts with Guzzle 7 and PHP 8 requirements in newer Laravel applications. You would need to fork the driver, update its constraints, and re-test queue semantics against the newer framework internals. That is a porting project rather than a supported installation.
Can I use laravelcollective/iron-queue with Lumen?
Yes. Register the package service provider manually in bootstrap/app.php and configure an ironmq queue connection with your IronMQ project, token, host, queue, and retry_after settings. Lumen uses the same Illuminate queue components, so jobs dispatch through the standard queue API. Confirm that your Lumen version still matches the old illuminate/* constraints before relying on it.
Does laravelcollective/iron-queue support Horizon or job batching?
No. The driver was written against Laravel 5.x queue internals and predates job batching, rate limiting, and Horizon integration. You will not get queue-depth dashboards, autoscaling signals, or per-queue wait-time metrics from Horizon. Any observability around IronMQ queue depth or wait time requires custom instrumentation against the IronMQ API or SDK.
What are the alternatives to laravelcollective/iron-queue?
The recommended alternative is to migrate to a queue backend Laravel supports natively, such as Redis, Amazon SQS, or the database driver. Those give you maintained drivers, modern queue features, and broader observability options. If IronMQ must remain in the stack, either vendor and fork this archived driver or call the iron-io/iron_mq SDK directly from a thin custom driver. There is no actively maintained IronMQ driver for modern Laravel.
How do I test IronMQ queue jobs in Laravel?
Use Queue::fake() in your feature tests to assert that jobs are dispatched without contacting IronMQ. For integration tests, point the ironmq connection at a dedicated test queue and keep retry_after low so tests do not wait on reservation timeouts. You can also mock the underlying iron-io/iron_mq SDK in unit tests to avoid network calls and credential dependency.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo