PHPackages                             pmill/rabbit-rabbit-ecs - 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. pmill/rabbit-rabbit-ecs

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

pmill/rabbit-rabbit-ecs
=======================

An AWS ECS integration for pmill/rabbit-rabbit

v0.1.0(8y ago)05MITPHPPHP &gt;=7.1.0

Since Apr 11Pushed 8y ago1 watchersCompare

[ Source](https://github.com/pmill/rabbit-rabbit-ecs)[ Packagist](https://packagist.org/packages/pmill/rabbit-rabbit-ecs)[ Docs](https://github.com/pmill/rabbit-rabbit-ecs)[ RSS](/packages/pmill-rabbit-rabbit-ecs/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

pmill/rabbit-rabbit-ecs
=======================

[](#pmillrabbit-rabbit-ecs)

Introduction
------------

[](#introduction)

This library is an integration for [pmill/rabbit-rabbit](https://github.com/pmill/rabbit-rabbit) allows you to set the desired task count for Amazon ECS services when RabbitMQ queues message counts match conditions.

Requirements
------------

[](#requirements)

This library package requires PHP 7.1 or later, and a previously setup auto-scaling Amazon ECS service.

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

[](#installation)

The recommended way to install is through [Composer](http://getcomposer.org).

```
# Install Composer
curl -sS https://getcomposer.org/installer | php
```

Next, run the Composer command to install the latest version:

```
composer require pmill/rabbit-rabbit-ecs
```

Usage
=====

[](#usage)

The following example will set the service desired task count to 1 if the number of messages in the queue is less than 5000, if the count is greater than 5000 then it will set the desired task count to 3. There is a complete example in the `examples/` folder.

```
$config = new RabbitConfig([
    'baseUrl' => 'localhost:15672',
    'username' => 'guest',
    'password' => 'guest',
]);

$manager = new ConsumerManager($config);

$vhostName = '/';
$queueName = 'messages';
$ecsClusterName = 'default';
$ecsServiceName = 'sample-webapp';

$ecsClient = new EcsClient([
    'version' => 'latest',
    'region' => 'eu-west-1',
    'credentials' => [
        'key' => '',
        'secret' => '',
    ],
]);

$manager->addRule(
    new EcsRule(
        $vhostName,
        $queueName,
        $ecsClient,
        $ecsClusterName,
        $ecsServiceName,
        1
    ),
    new CountBetween(0, 4999)
);

$manager->addRule(
    new EcsRule(
        $vhostName,
        $queueName,
        $ecsClient,
        $ecsClusterName,
        $ecsServiceName,
        3
    ),
    new GreaterThan(5000)
);

$manager->run();
```

Version History
===============

[](#version-history)

0.1.0 (12/04/2018)

- First public release of rabbit-rabbit-ecs

Copyright
=========

[](#copyright)

pmill/rabbit-rabbit-ecs Copyright (c) 2018 pmill () All rights reserved.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

2950d ago

### Community

Maintainers

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

---

Top Contributors

[![pmill](https://avatars.githubusercontent.com/u/3912365?v=4)](https://github.com/pmill "pmill (2 commits)")

---

Tags

phpapiawsrabbitmqrulesmanagementECS

### Embed Badge

![Health badge](/badges/pmill-rabbit-rabbit-ecs/health.svg)

```
[![Health](https://phpackages.com/badges/pmill-rabbit-rabbit-ecs/health.svg)](https://phpackages.com/packages/pmill-rabbit-rabbit-ecs)
```

###  Alternatives

[dusterio/laravel-aws-worker

Run Laravel (or Lumen) tasks and queue listeners inside of AWS Elastic Beanstalk workers

3105.7M](/packages/dusterio-laravel-aws-worker)[dusterio/laravel-plain-sqs

Custom SQS connector for Laravel that supports custom format JSON

1352.7M1](/packages/dusterio-laravel-plain-sqs)[vinelab/bowler

A Rabbitmq wrapper for Laravel

4659.7k1](/packages/vinelab-bowler)[alchemy/rabbitmq-management-client

RabbitMQ Management Plugin API Client

4242.6k](/packages/alchemy-rabbitmq-management-client)[iamfarhad/laravel-rabbitmq

A robust RabbitMQ driver for Laravel Queue with advanced message queuing, reliable delivery, and high-performance async processing capabilities

3215.6k](/packages/iamfarhad-laravel-rabbitmq)

PHPackages © 2026

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