2017 © Pedro PelĂĄez
 

library reagieren

A set of adapters for message brokers.

image

hellofresh/reagieren

A set of adapters for message brokers.

  • Monday, May 30, 2016
  • by italolelis
  • Repository
  • 85 Watchers
  • 2 Stars
  • 105 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 2 Forks
  • 5 Open issues
  • 11 Versions
  • 0 % Grown

The README.md

Reagieren

Codacy Badge Codacy Badge, (*1)

Reagieren is a set of adapters for many different queues systems., (*2)

Currently it's hard to have one unique interface to access RabbitMQ, ApacheKafka, IronMQ, etc... So why not having only one common interface and implementing adapters that follows this interfaces? That's the main concept of this library., (*3)

Where can we use this?

Anywhere, that's the beauty of it, you don't depend on a huge framework or any other component. Think about this as a unified way to access message brokers., (*4)

How to use it?

Check this producer:, (*5)

use HelloFresh\Reagieren\MessageBroker\RabbitMQ\PHPAmqp\Producer;

(new Producer('127.0.0.1', 5672, 'guest', 'guest'))->produce('example', 'Hello world this is a message');

echo 'Message sent!', PHP_EOL;

Now check this consumer:, (*6)

use HelloFresh\Reagieren\Message;
use HelloFresh\Reagieren\MessageBroker\RabbitMQ\PHPAmqp\Consumer;

$consumer = new Consumer('127.0.0.1', 5672, 'guest', 'guest');

$callback = function (Message $message) {
    echo 'Received ', $message->getPayload(), PHP_EOL;
};

$consumer->consume(
    'example',
    $callback
);

echo 'Listening...', PHP_EOL;

As you can see it's just an adapter that will abstract all the complexity of setting technology specific problems. For instance to put something on a kafka queue we need to:, (*7)

  1. Set up the consumer
  2. Add brokers
  3. Create a topic
  4. Select the partition
  5. Send the payload

But you don't care about partitions, topics, queue balancing, so that's really awesome!, (*8)

Producing to multiple brokers

You can produce messages to multiple brokers using Composite\Producer, see this example:, (*9)

use HelloFresh\Reagieren\MessageBroker\Composite\Producer;

//... setup RabbitMQ broker
$rabbitProducer = ...;

//... setup Kafka broker
$kafkaBroker = ...;

$configs = [
    'kafka_php' => [
        'topic' => 'example_topic'
    ],
    'rabbit_mq' => [
        'topic' => 'example_exchange'
    ]
];

(new Producer($rabbitProducer, $kafkaBroker))->produce($payload, $configs);

echo 'Message sent!', PHP_EOL;

The Versions

30/05 2016

dev-master

9999999-dev https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

19/04 2016

dev-implements-is-connected

dev-implements-is-connected https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

19/04 2016

v0.6.0

0.6.0.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

12/04 2016

v0.4.3

0.4.3.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

12/04 2016

v0.4.2

0.4.2.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

12/04 2016

v0.4.1

0.4.1.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

12/04 2016

v0.5.0

0.5.0.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

11/04 2016

v0.4.0

0.4.0.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

08/04 2016

v0.3.0

0.3.0.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

08/04 2016

0.2.0

0.2.0.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker

29/03 2016

0.1.0

0.1.0.0 https://github.com/hellofresh/reagieren

A set of adapters for message brokers.

  Sources   Download

MIT

The Requires

 

The Development Requires

rabbitmq queue message kafka broker