Po kilku badaniach odkryłem, że istnieje możliwość zamienności między brokerami i klientami dla tej samej wersji AMQP.
Mianowicie, biblioteka klienta zaimplementowana do używania AMQP 0.9.1 powinna teoretycznie być w stanie połączyć się z brokerem, który implementuje AMQP 0.9.1. To oczywiście wiąże się z pewnymi ograniczeniami dotyczącymi określonych funkcji zaimplementowanych w kliencie/brokerze, które nie są zdefiniowane w standardzie AMQP.
Więcej szczegółów na temat obsługiwanych funkcji można znaleźć pod następującym adresem URL: https://www.rabbitmq.com/interoperability.html
Używam Apache Qpid jako zamiennik dla wbudowanego serwera RabbitMQ.
Najprostszym sposobem na rozpoczęcie jest stworzenie pierwotnego pliku konfiguracyjnego z binarnego pliku wykonywalnego Qpid (udokumentowane w instrukcji dla maklera Java), a następnie użyć tego w kodzie, aby rozpocząć Broker:
BrokerOptions configuration = new BrokerOptions("path-to-initial-configuration.json);
Broker broker = new Broker();
broker.startup(configuration);
Zasadniczo szukają alternatywy dla RabbitMQ, która może być osadzona. Jesteś pewien, że RabbitMQ sam nie ma opcji osadzania? ActiveMQ robi na przykład. http://activemq.apache.org/how-do-i-embed-a-broker-inside-a-connection.html – Gimby
Dzięki za sugestię. Nie szukałem tego specjalnie, ale będę musiał rzucić okiem. Ponieważ działa z erlangiem, nie wydaje się, że oferuje tę funkcję ze względu na swoje zależności. – alxbrd