silpo-tech/message-bus-bundle

Message bus bundle for Symfony

v1.0.0 2025-09-23 19:05 UTC

This package is auto-updated.

Last update: 2025-09-24 11:28:50 UTC


README

CI codecov License: MIT

Development

Run tests

docker compose -p message-bus -f docker-compose.test.yml up -d --build --remove-orphans && \
docker compose -p message-bus -f docker-compose.yml exec -T api /usr/local/bin/composer install --working-dir=/var/www/project -o --no-interaction --ignore-platform-reqs && \
docker compose -p message-bus -f docker-compose.yml exec -T api /usr/local/bin/composer test:run --working-dir=/var/www/project

Installation

Require the bundle and its dependencies with composer:

$ composer require silpo-tech/message-bus-bundle

Register the bundle:

// project/config/bundles.php

return [
    MessageBusBundle\MessageBusBundle::class => ['all' => true],
];

Add tags to batch processor to tell application where to look for batch processors

    MessageBusBundle\EnqueueProcessor\Batch\BatchProcessorInterface:
      tags:
        - 'enqueue.transport.processor'
        - name: !php/const MessageBusBundle\EnqueueProcessor\Batch\AbstractBatchProcessor::BATCH_PROCESSOR_TAG
          indexed_by: key

Start consuming:

./bin/console enqueue:consume --setup-broker -vvv

How to enable messages compression:

message_bus:
  default_encoder: gzip #available: null, gzip, zlib, deflate

and use MessageBusBundle\Producer\EncoderProducerInterface in your project*. Such service is not available by default.

  • Do not forget to enable zlib extension at PHP.