Build status
, (*1)
Stability
, (*2)
Installation
Via Composer
Composer is the only supported way of installing aztech/event-bus-extra-amqp . Don't know Composer yet ? Read more about it., (*3)
$ composer require "aztech/event-bus-extra-amqp":"~1"
, (*4)
Autoloading
Add the following code to your bootstrap file :, (*5)
require_once 'vendor/autoload.php';
Dependencies
- videlalvaro/php-amqplib : ~2
Supported elements :
- Persistent publish
- Subscribe
Configuration options & defaults
Parameter |
Default |
Description |
host |
127.0.0.1 |
Hostname of the AMQP broker. |
port |
5672 |
Listening port of the AMQP broker. |
user |
guest |
AMQP broker username. |
pass |
guest |
AMQP broker password. |
vhost |
/ |
Virtual host name on the AMQP broker. |
exchange |
exchange |
Name of the exchange. |
event-queue |
event-queue |
Name of the event queue. |
event-prefix |
|
Prefix that will be automatically added to published/stripped from received event topics. |
auto-create |
true |
Toggles the providers topology creation feature. Allows to auto-create the required exchanges, queues, and bindings for the provider's need. |
Initialization
require_once 'vendor/autoload.php';
use \Aztech\Events\Bus\Events;
use \Aztech\Events\Bus\Plugins\Amqp\Amqp;
Amqp::loadPlugin();
// See options chart for actual parameters
$options = array(...);
$publisher = Events::createPublisher('amqp', $options);
$event = Events::create('category', array('property' => 'value'));
$publisher->publish($event);
// ...
Caveats
At the time being, the AMQP event plugin uses topic based routing to publish events. Multiple nodes connecting to a single queue will work in round-robin mode., (*6)
It is possible to use different routing scenarios/exchange types, but that is left as an exercise to the reader (Hint: no need to build/patch the current plugin)., (*7)