RabbitMQ

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
RabbitMQ
RabbitMQ Logo
Entwickler Pivotal Software
Aktuelle Version 3.6.1
(1. März 2016)
Betriebssystem Plattformunabhängig
Programmiersprache 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 | Quelltext bearbeiten]

Dieser Abschnitt zeigt Programmbeispiele in Python:

Senden[Bearbeiten | Quelltext 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 | Quelltext 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 | Quelltext bearbeiten]

Weblinks[Bearbeiten | Quelltext bearbeiten]