RabbitMQ

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
RabbitMQ
RabbitMQ Logo
Entwickler Pivotal Software
Aktuelle Version 3.5.4
(22. Juli 2015)
Betriebssystem Plattformunabhängig
Programmier­sprache Erlang
Kategorie Advanced Message Queuing Protocol Message Oriented Middleware
Lizenz Mozilla Public License
www.rabbitmq.com

RabbitMQ ist eine Open Source Message Broker Software, die das Advanced Message Queuing Protocol (AMQP) implementiert. Der RabbitMQ-Server ist in Erlang geschrieben. Die Software wird entwickelt und gepflegt von Rabbit Technologies Ltd, einem Zusammenschluss von LShift und Cohesive FT, die im April 2010 von SpringSource erworben wurde. SpringSource ist eine Abteilung von VMware.

Beispiele[Bearbeiten]

Dieser Abschnitt zeigt Programmbeispiele in Python:

Senden[Bearbeiten]

Das folgende Programm baut eine Verbindung auf, stellt die Existenz der Empfänger-Warteschlange sicher, sendet die Nachricht und schließt die Verbindung:

#!/usr/bin/env python
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='',routing_key='hello', body='Hello World!')
print " [x] Sent 'Hello World!'"
connection.close()

Empfangen[Bearbeiten]

Entsprechend empfängt das folgende Programm Nachrichten aus der Warteschlange und gibt deren Inhalt auf dem Bildschirm aus:

#!/usr/bin/env python
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))
channel = connection.channel()
channel.queue_declare(queue='hello')
print ' [*] Waiting for messages. To exit press CTRL+C'
def callback(ch, method, properties, body):
    print " [x] Received %r" % (body,)
channel.basic_consume(callback,queue='hello',no_ack=True)
channel.start_consuming()

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]