Drupal is a registered trademark of Dries Buytaert
Release: Leaflet 10.4.11 Minor update available for module leaflet (10.4.11). Release: Session Inspector 1.0.8 Minor update available for module session_inspector (1.0.8). Release: Migrate QA 2.0.4 Minor update available for module migrate_qa (2.0.4). Release: CKEditor Description List 3.0.0 Major update available for module ckeditor_descriptionlist (3.0.0). Release: FlowDrop 2.4.0 Minor update available for module flowdrop (2.4.0). Release: JWT Token Refresh 1.0.4 Minor update available for module jwt_token_refresh (1.0.4). Release: ConReg 1.0.0-beta1 First beta version released for module conreg (1.0.0-beta1). Release: AI Image Studio 1.0.0-beta8 New beta version released for module ai_image_studio (1.0.0-beta8). Usage Milestone: Statistics Counter Module statistics_counter crossed 1,000 active installs. Module Revived: Decoupled Router 2.0.7 Module decoupled_router updated after 11 months of inactivity (2.0.7).

This module allows you to run Drupal's queue system using Cloudflare Queues without any code changes. It leverages Cloudflare's managed, global message queue system, eliminating the need to manage your own message broker.

Run Drupal's queue system on Cloudflare Queues with no code changes. Opt a queue (cron queues, the Batch API, or a custom queue worker) onto the Cloudflare backend in settings.php, and items are enqueued and consumed over the Cloudflare Queues HTTP pull/ack API.

Cloudflare Queues is a managed, global message queue. Unlike most queue backends, you do not stand up or wire a broker: the queue is provisioned and tracked for you by the Cloudflare Compute module, and this module runs Drupal's queue on it.

Features

  • Implements Drupal's ReliableQueueInterface, so existing queue workers run unchanged.
  • Consumes a queue provisioned and tracked by Cloudflare Compute (its id and credentials come from the queue asset); no broker to operate.
  • At-least-once delivery over the Cloudflare Queues HTTP pull/ack API, with visibility-timeout leases and retries.
  • Swappable payload codec: JSON by default, or an opt-in PHP-serialize codec that preserves object payloads.

Post-Installation

  1. Provision a Cloudflare queue with the Cloudflare Compute module (its deploy wizard or Queues admin), or register an existing one.
  2. Opt a Drupal queue onto the backend in settings.php, for example: $settings['queue_service_my_worker'] = 'queue.cloudflare';
  3. Optionally change the Cloudflare queue-name prefix (default "drupal-") in the module settings.

Additional Requirements

Requires the Cloudflare API (cloudflare_api), Cloudflare SDK (cloudflare_sdk) and Cloudflare Compute (cloudflare_compute) modules, and a Cloudflare API token with Queues Edit permission (queues#read and queues#write). Install with Composer:

composer require drupal/cloudflare_queue

None beyond the required dependencies. Cloudflare Compute (a hard dependency) provisions and tracks the queue this backend runs on.

Similar projects

Like the core database queue, or backends such as RabbitMQ and AWS SQS, this provides a Drupal queue implementation. The difference is provisioning: the queue is created and tracked for you as configuration (by Cloudflare Compute), and it runs over Cloudflare's global HTTP API with no broker or separate worker to operate.

Supporting this Module

Issue reports, patches and feedback are welcome in the project's issue queue.

Community Documentation

Activity

Tracked releases
3
Tracked since
Jul 2026
Latest release
1 month ago
Releases (12 mo)
3 ▲ from 0
Maintenance
Active

Release Timeline

Releases

Version Type Release date
1.0.0-alpha3 Pre-release Jul 11, 2026
1.0.0-alpha2 Pre-release Jul 11, 2026
1.0.0-alpha1 Pre-release Jul 7, 2026