Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Search API HTML Element Filter 1.0.7 Minor update available for module search_api_html_element_filter (1.0.7). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). Varbase Media Header 9.2.1 Minor update available for module varbase_media_header (9.2.1). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

This module allows Drupal to use Symfony Messenger to process batch operations, grouping messages and providing a user interface to track their progress. It can replace the built-in Drupal Batch API, improving performance through parallel processing and allowing resources to be managed more efficiently.

Batch Messenger is divided into three pieces of functionality:

  • Group Symfony Messenger messages together into a collection. (Base functionality).
    Simply add a CollectionItem stamp with a shared ID.
  • Expose a UI of progress of each collection. (Optional, enabled by default)
  • Intercept Drupal Batch API calls (batch_set()) and replace with Messenger internals. (Optional, enabled by default)

This allows you to adopt Symfony Messenger, while providing a nice UI for the user. Performance of operations improve dramatically, as they may be worked in parallel, instead of single threaded. Message resources (CPU/memory, etc) can be increased in a worker, while granting the possibility to reduce web thread resources since they don't need to scale up for Batch API operations.

When the legacy Batch API is used (\batch_set), the UI is retained, and we provide status updates to the user despite operations not actually running in the web requests.

The module is a drop-in replacement for Batch API. If you encounter issues, uninstalling the module will return existing behavior. Though, any in-progress batches will be deleted.

More information can be found in the README.

Activity

Total releases
7
First release
Jul 2025
Latest release
1 month ago
Releases (12 mo)
4 ▲ from 3
Maintenance
Active

Release Timeline

Releases

Version Type Release date
1.1.2 Stable May 27, 2026
1.0.2 Stable Sep 9, 2025
1.0.1 Stable Sep 5, 2025
1.1.1 Stable Sep 5, 2025
1.1.0 Stable Jul 15, 2025
1.x-dev Dev Jul 15, 2025
1.0.0 Stable Jul 15, 2025