RabbitMQ

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
RabbitMQ

RabbitMQ Logo
Basisdaten

Entwickler Pivotal Software
Aktuelle Version 3.7.9[1]
(16. November 2018)
Betriebssystem Plattformunabhängigkeit
Programmiersprache Erlang[2]
Kategorie Advanced Message Queuing Protocol Message Oriented Middleware
Lizenz Mozilla Public License[3]
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 war eine Abteilung von VMware, die im April 2013 in ein neu gegründetes Joint Venture Unternehmen zwischen VMware, EMC Corporation und General Electric mit Namen Pivotal Software Inc. ausgegliedert wurde. [4]

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]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Release 3.7.9. 16. November 2018 (abgerufen am 17. November 2018).
  2. The rabbitmq Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 19. Juli 2018).
  3. RabbitMQ - Mozilla Public License. (englisch, abgerufen am 4. August 2018).
  4. Gartner, GE Joins EMC and VMware in a Joint Venture to Challenge Software Megavendors in the Cloud