jiyis/laravel-nsq

Nsq driver for Laravel Queue
3,976 8
Install
composer require jiyis/laravel-nsq
Latest Version:1.0.2
PHP:>=7.0
License:MIT
Last Updated:Aug 2, 2018
Links: GitHub  ·  Packagist
Maintainer: jiyis

Laravel Nsq Client

NSQ client for laravel

Requirements

Dependency Requirement
PHP >= 7.1.0
Swoole The Newer The Better No longer support PHP5 since 2.0.12

Installation

pecl install swoole
composer require jiyis/laravel-nsq

Usage

Set env

NSQSD_URL=127.0.0.1:4150
NSQLOOKUP_URL=127.0.0.1:4161

# If it is multiple, please separate them with ","
NSQSD_URL=127.0.0.1:4150,127.0.0.1:4250

Create Job

php artisan make:job NsqTestJob

you need set two property. public $topic; public $channel;

class NsqTestJob  implements ShouldQueue
{

    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
 
    public $topic = 'test';
    
    public $channel = 'web';

    public function handle()
    {
        $client = $this->job->getCurrentClient();
        $payload = json_decode($this->job->getMessage(), true);
        ...
    }
}

Publish

// the data you want to be publish 
$str = [
    'message' => 'this is a message',
    'user_id' => 1
];
// not supported dispatch
Queue::connection('nsq')->push(new NsqTestJob, $str);

Subscribe

php artisan queue:work nsq --sleep=3 --tries=3 --timeout=500  --job=App\\Jobs\\NsqTestJob  

Related Packages

gabrieloliverio/laravel5-generators

Database metadata-based generators for Laravel 5

1
erirk/paypalpayment

laravel-paypalpayment is simple package help you process direct credit card paym...

0
doctrine/dbal

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

631,580,251 9,707
laravel/framework

The Laravel Framework.

580,311,802 34,925
laravel/tinker

Powerful REPL for the Laravel framework.

489,754,436 7,444