dnna / swiftmailer-enqueue-bundle
使用Enqueue消息队列的Swiftmailer Spool
1.1.0
2021-04-28 13:01 UTC
Requires
- enqueue/enqueue-bundle: 0.10.*
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
转换为阻塞命令。这意味着它将在达到指定的时间或消息限制之前不会退出。如果没有指定限制,则命令将永远不会退出。