wouterlagerwerf / laravel-sns-queue-driver
一个添加了对SNS(Simple Notification Service)作为Laravel队列驱动支持的包。非常适合微服务消息传递。
v1.0.5
2024-05-26 11:10 UTC
Requires
- php: ^8.2
- laravel/framework: ^11.0
This package is auto-updated.
Last update: 2024-09-29 21:09:19 UTC
README
Laravel SNS Queue Driver 包扩展了Laravel的队列系统,以支持Amazon SNS(简单通知服务),使其能够无缝集成到微服务消息架构中。
安装
您可以通过Composer安装此包
composer require wout/laravel-sns-queue-driver
配置
安装包后,将以下配置添加到您的 config/queue.php 文件中
'connections' => [ 'sns' => [ 'driver' => 'sns', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'), 'queue' => env('SQS_QUEUE', 'default'), 'suffix' => env('SQS_SUFFIX'), 'after_commit' => false, 'endpoint' => env('AWS_ENDPOINT'), 'sns_topic_arn' => env('SNS_TOPIC_ARN', 'arn:aws:sns:us-east-1:your-account-id:topic'), ], ],
请确保将占位符值替换为您的实际AWS凭证和SNS主题ARN。
AWS配置
对于此包,请确保您已设置一个SNS主题和一个订阅了SNS主题的SQS队列。SNS主题ARN应设置为 sns_topic_arn 配置值。
使用方法
配置完成后,您可以使用SNS队列驱动,就像使用Laravel中的其他队列驱动一样
use Illuminate\Support\Facades\Queue; Queue::push(function ($job) { // Process the job $job->delete(); });
测试
您可以使用以下命令运行包测试
composer test
贡献
欢迎贡献!如果您发现了一个错误或想要建议一个新功能,请随时打开一个问题或提交一个pull请求。
许可证
此包是开源软件,许可协议为 MIT许可证。