dnna/swiftmailer-enqueue-bundle

使用Enqueue消息队列的Swiftmailer Spool

安装次数: 18,456

依赖: 0

建议: 0

安全: 0

星星: 0

关注者: 2

分支: 0

开放问题: 0

类型:symfony-bundle

1.1.0 2021-04-28 13:01 UTC

This package is auto-updated.

Last update: 2024-09-28 22:52:59 UTC


README

这是一个symfony扩展包,允许使用Enqueue消息队列来排队和消费消息。

基本上是https://blog.forma-pro.com/spool-swiftmailer-emails-to-real-message-queue-9ecb8b53b5de的一个实现,具有额外的功能,如优雅的关闭和其他自定义选项。

安装

使用Symfony Flex的应用程序

打开命令行控制台,进入您的项目目录并执行

$ composer require dnna/swiftmailer-enqueue-bundle

不使用Symfony Flex的应用程序

步骤 1: 下载扩展包

打开命令行控制台,进入您的项目目录并执行以下命令以下载此扩展包的最新稳定版本

$ composer require dnna/swiftmailer-enqueue-bundle

此命令要求您全局安装Composer,如Composer文档的安装章节中所述。

步骤 2: 启用扩展包

然后,通过将其添加到项目中的app/AppKernel.php文件中注册的扩展包列表来启用该扩展包

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Enqueue\Bundle\EnqueueBundle(),
            new Dnna\SwiftmailerEnqueueBundle\SwiftmailerEnqueueBundle(),
        );

        // ...
    }

    // ...
}

使用方法

以下是此扩展包的配置参考

dnna_swiftmailer_enqueue:
    queue:
        service_id: enqueue.transport.default.context
        key: swiftmailer_spool
        requeue_on_exception: false
        max_requeue_attempts: 5
    consumption:
        receive_timeout: 1000
    extensions:
        signal_extension: true

所有参数都是可选的,如果未设置,则将使用默认值。

警告:安装此扩展包会将swiftmailer:spool:send转换为阻塞命令。这意味着它将在达到指定的时间或消息限制之前不会退出。如果没有指定限制,则命令将永远不会退出。