Skip to main content
This article is initial research as of June 2026. laravel/symfony-on-cloud is a repository in development, and more features are planned.

What is laravel/symfony-on-cloud?

laravel/symfony-on-cloud is an official Symfony bundle that brings Laravel Cloud capabilities to Symfony applications. It’s a brand new repository published on June 27, 2026. Laravel Cloud has been a Laravel-only platform, but this package now lets Symfony developers use Laravel Cloud infrastructure (managed queues, etc.). The first feature is managed queues via Symfony Messenger. The README notes that “more Laravel Cloud capabilities will follow,” so features beyond queues are planned.

Installation

Then register the bundle in config/bundles.php (Symfony Flex recipes aren’t supported yet, so add it manually).

Managed queues

Basic configuration

The bundle provides a preconfigured transport named cloud. In Laravel Cloud environments, the connection settings are injected automatically, so you don’t need to configure a DSN by hand.
Migrating an existing Symfony Messenger app to Laravel Cloud is straightforward. Because Cloud auto-injects MESSENGER_TRANSPORT_DSN=laravel-cloud://managed-queue, apps that use the standard async transport (dsn: '%env(MESSENGER_TRANSPORT_DSN)%') work without any code changes.

Multiple queues

In a Laravel Cloud environment, you can create multiple managed queues (e.g. default and critical). Each queue runs with an independent SQS queue and workers. Use CloudQueueStamp to dispatch to a specific queue.
Dispatching without a stamp routes to the default queue.

FIFO queues

Managed queues whose names end with .fifo are treated as FIFO queues. Messages are delivered in strict order and deduplicated.
By default, the group ID uses the queue name and the deduplication ID uses a unique value. For finer control, add a CloudFifoStamp.

Fair queues

SQS fair queues prevent one tenant from starving others when they submit a lot of jobs. On standard queues, adding a message group ID has SQS distribute processing capacity fairly across tenants.
CloudMessageGroupStamp is for standard queues only and can’t be used on FIFO queues. To specify a group on a FIFO queue, use CloudFifoStamp.

Delays

DelayStamp sets a send delay on a standard queue. Due to SQS’s constraints, the maximum is 15 minutes. Values over 15 minutes error (they aren’t silently executed after 15 minutes). FIFO queues don’t support delays, so using DelayStamp with them errors.

Retries

When a handler fails, the bundle returns the message to SQS and it’s redelivered after the visibility timeout expires. This means retries are bounded by SQS’s 12-hour visibility timeout limit, not by the 15-minute send delay limit. Retry configuration uses Symfony Messenger’s standard retry_strategy.
Exceptions implementing UnrecoverableExceptionInterface are recorded as failures immediately without retrying.

Local development

The cloud transport can be overridden per app. Locally, using sync:// runs jobs synchronously in-process.
To disable the feature entirely, set laravel_cloud.queue.enabled: false.

Summary

laravel/symfony-on-cloud is an official bundle that brings Laravel Cloud infrastructure to Symfony apps. Its first implementation is managed queues, with practical features including Symfony Messenger integration, multiple queues, FIFO/fair queues, and retry configuration. According to the official README, more Laravel Cloud capabilities beyond queues will be added. As more Symfony apps run on Laravel Cloud, this package is set to become very valuable.

laravel/symfony-on-cloud

Official repository and README

Laravel Cloud

Laravel Cloud homepage

Symfony Messenger

Symfony Messenger official documentation

Laravel Cloud docs

Detailed Laravel Cloud documentation
Last modified on July 13, 2026