brocode/module-image-optimizer-queue

Magento 2 module adaption for generating asynchron messages for image optimization, based on internal Mysql Queue

Fund package maintenance!
By Me A Coffee

Installs: 3

Dependents: 1

Suggesters: 1

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

Type:magento2-module

1.1.0 2024-07-23 12:44 UTC

This package is auto-updated.

Last update: 2025-04-23 14:24:11 UTC


README

This module provides a queue configuration for asynchronous image conversions in Magento 2. It is based on the brocode/module-image-optimizer

Goals of this module:

  • Use of Magento 2 basic MySQL queue framework to
    • publish image files that need to be converted
    • consume image conversion message and asynchronously convert them to the target format

"Buy Me A Coffee"

Installation

composer require brocode/module-image-optimizer-queue
bin/magento module:enable BroCode_ImageQueueOptimizer
bin/magento setup:upgrade

Configuration

Basically nothing has to be configured and should run out of the box.

Any image needed to be converted is scanned with a cron job from the base module and published to the configured queue instead of a direct conversion.

To consume any conversion event published, you can manually start the queue consumer via the Magento CLI:

bin/magento queue:consumers:start BroCodeImageConversionConsumer

Consider using supervisor or any other process manager to keep the consumer running.

Define multiprocess consumer Every consumer queue can be locked in Magento 2, to enable multiple conversion processes, following snippet can be added to the env.php to execute 5 conversion consumer parallel on every cron execution:

    'cron_consumers_runner' => [
        'consumers' => [
            'BroCodeImageConversionConsumer'
        ],
        'multiple_processes' => [
            'BroCodeImageConversionConsumer' => 5
        ]
    ],