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.Gartner, GE Joins EMC and VMware in a Joint Venture to Challenge Software Megavendors in the Cloud

Beispiele Dieser Abschnitt zeigt Programmbeispiele in Python:

Senden 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 python3 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 Entsprechend empfängt das folgende Programm Nachrichten aus der Warteschlange und gibt deren Inhalt auf dem Bildschirm aus:

#!/usr/bin/env python3 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()

Weblinks RabbitMQ Website

Einzelnachweise

Kategorie:Middleware