PHPackages                             ryaremenko/amqp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. ryaremenko/amqp

ActiveLibrary[Queues &amp; Workers](/categories/queues)

ryaremenko/amqp
===============

AMQP wrapper to publish and consume messages

v0.0.5(4y ago)03.7k2MITPHPPHP &gt;=7.3

Since Feb 11Pushed 4y ago1 watchersCompare

[ Source](https://github.com/RYaremenko/amqp)[ Packagist](https://packagist.org/packages/ryaremenko/amqp)[ RSS](/packages/ryaremenko-amqp/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (5)Dependencies (3)Versions (6)Used By (0)

ryaremenko/amqp
===============

[](#ryaremenkoamqp)

AMQP wrapper to publish and consume messages especially from RabbitMQ

Installation
------------

[](#installation)

### Composer

[](#composer)

Add the following to your require part within the composer.json:

```
$ php composer require ryaremenko/amqp

```

Integration
-----------

[](#integration)

### Lumen

[](#lumen)

Create a **connection** class

Adjust the properties to your needs.

```
class BaseConnection extends AmqpConnection
{
    protected function setConnectionOptions(): AmqpConnectionOptions
    {
        return  (new AmqpConnectionOptions())
            ->setHost('127.0.0.1')
            ->setPort(5672)
            ->setLogin('guest')
            ->setPassword('guest');
    }
}
```

Register connection class as singleton:

```
/*
|--------------------------------------------------------------------------
|  Laravel example
|--------------------------------------------------------------------------
*/

//...

$this->app->singleton(BaseConnection::class);
$this->app->bind(AMQPConnectionInterface::class, BaseConnection::class);

//...
```

Publishing a message
--------------------

[](#publishing-a-message)

```
    (new AmqpProducer)->publish(['data'], 'queue_name');
```

Consuming messages
------------------

[](#consuming-messages)

```
class AMQPHandlersService
{
    private const HANDLERS = [
        'queue_name' => TestHandler::class
    ];

    private const PRIORITY_HANDLERS = [
        'queue_name'
    ];

    private $amqpConsumer;

    public function __construct(AmqpConsumer $amqpConsumer) {
        $this->amqpConsumer = $amqpConsumer;
    }

    public function handle(string $queueName) {
        $properties = [];
        if (in_array($queueName, self::PRIORITY_HANDLERS, true)){
            $properties['priority'] = true;
        }

        $handler = app(self::HANDLERS[$queueName]);
        $this->amqpConsumer->consume($queueName, function ($message) use ($handler) {
            try {
                $handler->handle($message->body);
            } catch (\Exception $exception) {
                // exception handler
            }
        },
        $properties);
    }
}
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 57.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~73 days

Total

5

Last Release

1622d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a9ee4e0fbdacaf7433d5f4f54e78e20dc5319a35194b7d80e40c5993a927cd54?d=identicon)[RYaremenko](/maintainers/RYaremenko)

---

Top Contributors

[![snovio-dev](https://avatars.githubusercontent.com/u/68379666?v=4)](https://github.com/snovio-dev "snovio-dev (4 commits)")[![RYaremenko](https://avatars.githubusercontent.com/u/20239267?v=4)](https://github.com/RYaremenko "RYaremenko (2 commits)")[![SanycoWS](https://avatars.githubusercontent.com/u/87803724?v=4)](https://github.com/SanycoWS "SanycoWS (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ryaremenko-amqp/health.svg)

```
[![Health](https://phpackages.com/badges/ryaremenko-amqp/health.svg)](https://phpackages.com/packages/ryaremenko-amqp)
```

###  Alternatives

[vladimir-yuldashev/laravel-queue-rabbitmq

RabbitMQ driver for Laravel Queue. Supports Laravel Horizon.

2.1k9.8M30](/packages/vladimir-yuldashev-laravel-queue-rabbitmq)[php-amqplib/rabbitmq-bundle

Integrates php-amqplib with Symfony &amp; RabbitMq. Formerly emag-tech-labs/rabbitmq-bundle, oldsound/rabbitmq-bundle.

1.3k20.1M65](/packages/php-amqplib-rabbitmq-bundle)[bschmitt/laravel-amqp

AMQP wrapper for Laravel and Lumen to publish and consume messages

2752.3M7](/packages/bschmitt-laravel-amqp)[enqueue/amqp-lib

Message Queue Amqp Transport

1078.5M61](/packages/enqueue-amqp-lib)[jwage/phpamqplib-messenger

Symfony messenger transport for the php-amqplib/php-amqplib library.

84149.7k1](/packages/jwage-phpamqplib-messenger)[mikemadisonweb/yii2-rabbitmq

Wrapper based on php-amqplib to incorporate messaging in your Yii2 application via RabbitMQ. Inspired by RabbitMqBundle for Symfony 2, really awesome package.

74262.1k1](/packages/mikemadisonweb-yii2-rabbitmq)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
