communicate with messaging brokers; • Defines both the network layer protocol and a high-level architecture for message brokers AMQP - Advanced Message Queuing Protocol
AMQP peers. • Message publishing or consuming to or from a queue is performed over a channel (AMQP). • A channel is multiplexed, one single connection can have multiple channels. Channel
extension written in C; • Already implemented in the application; • Do not offer support to consume messages in a non-blocking way; • Can not listen to posix signals while consuming; Native AMQP Driver
and easy to implement; • Provides an interoperable wire format to communicate with any message broker; • Frame based protocol, with frames modelled on HTTP; • Do not offer support to consume messages in a non-blocking way; Stomp Driver
function with the native driver • Implement a new driver with support to Posix signals; • Work with Symfony Messenger and change our architecture; Possible Solutions
AMQP 0-9-1 protocol. • It's been tested and used for examples by RabbitMQ; • Offers the possibility to consume messages in a non-blocking way; • Signals can be dispatched to the worker even if it's consuming messages; • Offers other options like: heartbeats, channels, respect POSIX signals, and multiple hosts PHP-AMQPLIB