pawprintdigital/laravel-queue-raw-sqs

提供在 Laravel 队列中处理原始 SQS 消息的能力

安装次数 : 27,120

依赖项: 0

建议: 0

安全性: 0

星标: 8

关注者: 2

分支: 3

类型:laravel-package

1.0.6 2019-09-10 11:22 UTC

This package is auto-updated.

Last update: 2024-09-10 22:01:20 UTC


README

此队列驱动程序将允许您从 Laravel 之外接收的 SQS 队列(例如,从 SNS 订阅)中提取原始 JSON 数据,并将其映射到 Laravel 中的正确作业处理器。

要求

Laravel 5.6+

安装

您可以使用以下命令通过 Composer 安装此包:Composer

composer require pawprintdigital/laravel-queue-raw-sqs

服务提供者

服务提供者应通过 Laravel 5.6 的包发现功能自动注册。

如果不起作用,您可以手动通过将以下行添加到您的 config/app.php 文件中的 providers 数组来注册服务提供者。

PawprintDigital\LaravelQueueRawSqs\LaravelQueueRawSqsServiceProvider::class

配置

要配置此包,请将以下元素添加到 config/queue.php 文件中的 connections 数组。

'rawsqs' => [
    'driver' => 'rawsqs',
    'key' => env('AWS_ACCESS_KEY_ID'),
    'secret' => env('AWS_SECRET_ACCESS_KEY'),
    'prefix' => env('AWS_SQS_QUEUE_PREFIX'),
    'queue' => env('AWS_SQS_QUEUE_NAME'),
    'region' => env('AWS_REGION'),
    'routes' => [
        '*' =>'App\\Jobs\\JobHandler'
    ]
]

路由

队列中的消息通过其 SNS 主题名称进行映射。您需要修改之前添加到数组的 routes 元素,将 SNS 主题名称映射到作业。

注意:如果您想在主题名称中忽略后缀或前缀,可以使用通配符 (*)。

默认情况下,如果配置文件中没有设置路由,驱动程序将尝试将 TopicName 映射到 App\Jobs 中相同名称的类。例如,一个名为 UserCreated 的 TopicName 将尝试映射到 App\Jobs\UserCreated::class,如果 routes 数组中没有条目。