PHP code example of stcer / aint-queue-client

1. Go to this page and download the library: Download stcer/aint-queue-client library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

stcer / aint-queue-client example snippets


use Composer\Autoload\ClassLoader;
use j\AintQueue\Client\AliasMessageEncoder;
use j\AintQueue\Client\Driver\DriverFactory;
use j\AintQueue\Client\Driver\Redis\Queue as RedisQueue;

$loader =  'password' => 'password',
    ],
    'encoder' => AliasMessageEncoder::class,
];

/** @var RedisQueue $queue */
$queue = DriverFactory::make($channel, $driverOption);
$queue->push('simple', 2);
$queue->push([
    'simple',
    [
        ['info_id' => 10]
    ]
], 5);

use Littlesqx\AintQueue\Driver\Redis\Queue as RedisQueue;
use Littlesqx\AintQueue\Serializer\AliasMessageEncoder;
use Stcer\AintQueueDemo\job\SimpleJob;

return [
    'example' => [
        'driver' => [
            'class' => RedisQueue::class,
            'connection' => [
                'host' => 'redis.jz.cn',
                'port' => 6379,
                'database' => '0',
                // 'password' => 'password',
            ],
            'encoder' => function() {
                $encoder = new AliasMessageEncoder();
                $encoder->addClassMap('NTY', SimpleJob::class);
                $encoder->addClassMap('simple', SimpleJob::class);
                return $encoder;
            },
        ],
        'logger' => [
            'class' => \Littlesqx\AintQueue\Logger\DefaultLogger::class,
            'options' => [
                'level' => \Monolog\Logger::DEBUG,
            ],
        ],
        'pid_path' => '/var/run/aint-queue',
        'consumer' => [
            'sleep_seconds' => 1,
            'memory_limit' => 96,
            'dynamic_mode' => true,
            'capacity' => 20,
            'flex_interval' => 5 * 60,
            'min_worker_number' => 5,
            'max_worker_number' => 30,
        ],
        'job_snapshot' => [
            'interval' => 5 * 60,
            'handler' => [],
        ],
    ],
];