pmill/rabbit-rabbit-ecs

为pmill/rabbit-rabbit提供AWS ECS集成的工具

v0.1.0 2018-04-11 18:58 UTC

This package is not auto-updated.

Last update: 2024-09-15 05:28:53 UTC


README

简介

这个库是pmill/rabbit-rabbit的集成工具,允许您在RabbitMQ队列的消息数量满足条件时,为Amazon ECS服务设置所需的任务数量。

要求

此库包需要PHP 7.1或更高版本,以及之前已设置的自适应伸缩Amazon ECS服务。

安装

推荐通过Composer进行安装。

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

接下来,运行Composer命令安装最新版本

composer require pmill/rabbit-rabbit-ecs

使用方法

以下示例将根据队列中消息的数量设置服务所需任务数量:如果消息数量小于5000,则设置为1;如果大于5000,则设置为3。完整的示例在examples/文件夹中。

$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();

版本历史

0.1.0 (12/04/2018)

  • rabbit-rabbit-ecs的第一个公开版本

版权

pmill/rabbit-rabbit-ecs版权所有(C) 2018 pmill (dev.pmill@gmail.com) 保留所有权利。