phillipsnick / sqs-queue-driver-bundle

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sqs Queue Driver Bundle

A driver for Queue Manager Bundle that uses Amazon SQS

Latest Stable Version License Build Status

Install

Composer

composer require mcfedr/sqs-queue-driver-bundle

AppKernel

Include the bundle in your AppKernel

public function registerBundles()
{
    $bundles = [
        ...
        new Mcfedr\QueueManagerBundle\McfedrQueueManagerBundle(),
        new Mcfedr\SqsQueueDriverBundle\McfedrSqsQueueDriverBundle(),

Config

With this bundle installed you can setup your queue manager config similar to this:

mcfedr_queue_manager:
    managers:
        default:
            driver: sqs
            options:
                default_url: https://sqs.eu-west-1.amazonaws.com/...
                region: eu-west-1
                credentials:
                    key: 'my-access-key-id'
                    secret: 'my-secret-access-key'
                queues:
                    name: https://sqs.eu-west-1.amazonaws.com/...
                    name2: https://sqs.eu-west-1.amazonaws.com/...

This will create a QueueManager service named "mcfedr_queue_manager.default"

  • default_url - Default SQS queue url
  • region required - The region where your queue is
  • credentials optional - Specify your key and secret This is optional because the SDK can pick up your credentials from a variety of places
  • queues optional - Allows you to setup a mapping of short names for queues, this makes it easier to use multiple queues and keep the config in one place

Options to QueueManager::put

  • url - A string with the url of a queue
  • queue - A string with the name of a queue in the config
  • time - A \DateTime object of when to schedule this job. Note: SQS can delay jobs up to 15 minutes
  • delay - Number of seconds from now to schedule this job. Note: SQS can delay jobs up to 15 minutes

About

License:MIT License


Languages

Language:PHP 100.0%