codin / thumper
RabbitMQ abstraction for queues and workers
Installs: 2 186
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 0
Requires
- php: ^7.4 || ^8.0
- php-amqplib/php-amqplib: ^3
Requires (Dev)
- friendsofphp/php-cs-fixer: @stable
- phpstan/phpstan: @stable
README
RabbitMQ abstraction for queues and workers.
Install
Via Composer
$ composer require codin/thumper
Examples
$connection = new PhpAmqpLib\Connection\AMQPLazyConnection('localhost', '5672', 'username', 'password'); $exchange = new Codin\Thumper\Config\Exchange('my-exchange-name', PhpAmqpLib\Exchange\AMQPExchangeType::DIRECT); $producer = new Codin\Thumper\Producer($connection, $exchange); $producer->publish('some message');
$connection = new PhpAmqpLib\Connection\AMQPLazyConnection('localhost', '5672', 'username', 'password'); $exchange = new Codin\Thumper\Config\Exchange('my-exchange-name', PhpAmqpLib\Exchange\AMQPExchangeType::DIRECT); $queue = new Codin\Thumper\Config\Queue('my-queue-name'); $options = new Codin\Thumper\Config\Consumer($exchange, $queue); $consumer = new Codin\Thumper\Consumer($connection, $options); $callback = static function (PhpAmqpLib\Message\AMQPMessage $message): void { echo $message->getBody(); // some message $message->ack(); }; $consumer->consume($callback);
Testing
$ composer test