level23 / laravel-aws-queue
Wrapper for the laravel sqs queue to accept sns topic messages.
Installs: 5 168
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 8
Forks: 0
Open Issues: 0
Requires
- php: ^7.0
- aws/aws-sdk-php: ^3.22
- illuminate/queue: ^5.4
- illuminate/support: ^5.4
Requires (Dev)
- fzaninotto/faker: ~1.4
- mockery/mockery: 0.9.*
- orchestra/testbench: ^3.4
- pdepend/pdepend: ^2.5
- phploc/phploc: ^3.0
- phpmd/phpmd: ^2.6
- phpunit/phpunit: ~5.7
- sebastian/phpcpd: ^3.0
- squizlabs/php_codesniffer: ^2.8
This package is auto-updated.
Last update: 2024-12-19 21:31:02 UTC
README
Laravel AWS Queue
This package adds a connection driver for sqs to allow for messages send by AWS SNS(Simple Notification Service) to SQS to be parsed correctly.
The Subject of an SNS message is used for the job name and the Message as the body/data for the job
Installing
Install the latest version with:
$ composer require level23/laravel-aws-queue
And then add the following service provider to
Usage
Add the following line to your config/app.php
Laravel
'providers' => [ ... Level23\AwsQueue\AwsQueueServiceProvider::class ]
Lumen
$app->register(Level23\AwsQueue\AwsQueueServiceProvider::class);
This wil override the existing sqs queue driver delivered by illuminate/queue
Batch jobs
To receive batch jobs change the driver to sqs-batch
and add the following to the config
'sqs' => [ 'driver' => 'sqs-batch', //default is sqs 'max' => 10, 'handler' => 'Classname or binding name in ioc' ... ]
This method gives you the ability to receive messages in batch and handle them at once! The maximum AWS allows us is 10 messages per request
public function handle($data) { // Here you have the sqs jobs available to you $jobs = $this->job->getJobs(); }
Requirements
To make use if this package you have to run PHP 7.0 or higher.
Contributing
If you want to help us improve this implementation, just contact us. All help is welcome! The only requirement for contributing is that all code is 100% covered by unit tests and that they implement the PSR standards.
License
See the file LICENSE for more information.