chelout/laravel-yandex-message-queue

Yandex Message Queue connector
3,981 1
Install
composer require chelout/laravel-yandex-message-queue
Latest Version:v0.0.3
PHP:^7.2
License:MIT
Last Updated:Oct 22, 2020
Links: GitHub  ·  Packagist
Maintainer: chelout

Laravel Yandex Message Queue

Latest Version on Packagist GitHub Tests Action Status Total Downloads

Этот модуль расширяет стандартную реализацию работы с очередями SQS и сделан специально для работы с реализацией SQS от команды Яндекс.Облако.

Главный недостаток реализации SQS со стороны Яндекс.Облако - непереносимость между средами, названия очередей содержат их идентификатор, например, вместо стандартного названия очереди default в Яндекс.Облаке такая очередь будет называться dj6000000002a9pq22in/default

Installation

You can install the package via composer:

composer require chelout/laravel-yandex-message-queue

В файле config/queue.php необходимо описать соединение, которое будет использоваться:

<?php

return [
    // ...

    'connections' => [
        // ...

        'ymq' => [
            'driver'    => 'ymq',
            'key'       => env('YANDEX_MESSAGE_QUEUE_KEY'),
            'secret'    => env('YANDEX_MESSAGE_QUEUE_SECRET'),
            'prefix'    => env('YANDEX_MESSAGE_QUEUE_PREFIX', 'https://message-queue.api.cloud.yandex.net/your-account-id'),
            'queue'     => env('YANDEX_MESSAGE_QUEUE_QUEUE', 'default'),
            'suffix'    => env('YANDEX_MESSAGE_QUEUE_SUFFIX'),
            'region'    => env('YANDEX_MESSAGE_QUEUE_REGION', 'ru-central1'),
            'queue_map' => [
                'default' => env('YANDEX_MESSAGE_QUEUE_DEFAULT'),
            ],
        ],
    ],

    // ...
];

В queue_map описывается массив соответствия алиасов названий очередей и их реальных названий.

Usage

TestJob::dispatch(['foo' => 'bar'])
    ->onConnection('ymq')
    ->onQueue('default');

TODO

  • tests

Credits

License

The MIT License (MIT). Please see License File for more information.

Related Packages

doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

637,827,751 9,703
laravel/framework

The Laravel Framework.

589,172,971 34,950
laravel/tinker

Powerful REPL for the Laravel framework.

498,216,183 7,442
laravel/serializable-closure

Laravel Serializable Closure provides an easy and secure way to serialize closur...

413,412,504 609
nunomaduro/collision

Cli error handling for console/command-line PHP applications.

394,964,158 4,660

Version History

Version Released PHP Laravel License
v0.0.3 ^7.2 ^6.0|^7.0|^8.0 MIT
v0.0.2 ^7.2 ^6.0|^7.0|^8.0 MIT
v0.0.1 ^7.2 ^6.0|^7.0|^8.0 MIT