rabbitmqAan de slag met rabbitmq


Opmerkingen

Deze sectie geeft een overzicht van wat rabbitmq is en waarom een ontwikkelaar het misschien wil gebruiken.

Het moet ook alle grote onderwerpen binnen rabbitmq vermelden en een link naar de gerelateerde onderwerpen bevatten. Aangezien de documentatie voor rabbitmq nieuw is, moet u mogelijk eerste versies van die gerelateerde onderwerpen maken.

versies

Versie Release-opmerkingen Publicatiedatum
3.6.5 Release-opmerkingen 2016/08/05
3.6.4 Release-opmerkingen 2016/07/29
3.6.3 Release-opmerkingen 2016/07/06
3.6.2 Release-opmerkingen 2016/05/19
3.6.1 Release-opmerkingen 2016/03/01
3.6.0 Release-opmerkingen 2015/12/22
3.5.7 Release-opmerkingen 2015/12/15
3.5.6 Release-opmerkingen 2015/10/07
3.5.5 Release-opmerkingen 2015/09/24
3.5.4 Release-opmerkingen 2015/07/22
3.5.3 Release-opmerkingen 2015/05/22
3.5.2 Release-opmerkingen 2015/05/12
3.5.1 Release-opmerkingen 2015/04/03
3.5.0 Release-opmerkingen 2015/03/11
3.4.4 Release-opmerkingen 2015/02/11
3.4.3 Release-opmerkingen 2015/01/07
3.4.2 Release-opmerkingen 2014/11/26
3.4.1 Release-opmerkingen 2014/10/29
3.4.0 Release-opmerkingen 2014/10/21
3.3.5 Release-opmerkingen 2014/08/11
3.3.4 Release-opmerkingen 2014/06/24
3.3.3 Release-opmerkingen 2014/06/17
3.3.2 Release-opmerkingen 2014/06/09
3.3.1 Release-opmerkingen 2014/04/29
3.3.0 Release-opmerkingen 2014/04/02
3.2.4 Release-opmerkingen 2014/03/04
3.2.3 Release-opmerkingen 2014/01/23
3.2.2 Release-opmerkingen 2013/12/11
3.2.1 Release-opmerkingen 2013/11/07
3.2.0 Release-opmerkingen 2013/10/23
3.1.5 Release-opmerkingen 2013/08/15
3.1.4 Release-opmerkingen 2013/08/07
3.1.3 Release-opmerkingen 2013/06/26
3.1.2 Release-opmerkingen 2013/06/24
3.1.1 Release-opmerkingen 2013/05/21
3.1.0 Release-opmerkingen 2013/05/01

RabbitMQ installeren op Ubuntu Server

Een korte opmerking voordat u RabbitMQ daadwerkelijk installeert: de Erlang-pakketten van Ubuntu 14.04 hebben problemen als u SSL met RabbitMQ gebruikt, dus u moet een nieuwere versie installeren dan wat de Ubuntu-pakketbeheerders bieden, dus gebruik de binaire bestanden op https: / /www.erlang-solutions.com/resources/download.html , voor Erlang 17.0 of hoger.

Voeg RabbitMQ toe aan de lijst met pakketrepository's:

echo 'deb http://www.rabbitmq.com/debian/ testing main' |
    sudo tee /etc/apt/sources.list.d/rabbitmq.list
 

En voeg vervolgens de handtekeningsleutel toe:

wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc |
    sudo apt-key add -
 

Update en installeer vervolgens:

sudo apt-get update && sudo apt-get install rabbitmq-server
 

RabbitMQ 'Hallo wereld'

Met deze code wordt een producent gemaakt die twee berichten naar een wachtrij verzendt en een consument die alle berichten uit die wachtrij ontvangt.

Code voor producer.py (met de pika 0.10.0 Python-client):

import pika

connection = pika.BlockingConnection(pika.ConnectionParameters(
        host='localhost'))
channel = connection.channel()

channel.queue_declare(queue='queueName')

channel.basic_publish(exchange='',
                      routing_key='queueName',
                      body='Hello')
channel.basic_publish(exchange='',
                      routing_key='queueName',
                      body='World!')
print("Message sent")
connection.close()
 

Code voor consumer.py:

import pika

connection = pika.BlockingConnection(pika.ConnectionParameters(
        host='localhost'))
channel = connection.channel()

channel.queue_declare(queue='queueName')

def callback(ch, method, properties, body):
    print("Received message: %r" % body)

channel.basic_consume(callback,
                      queue='queueName',
                      no_ack=True)

print('Waiting for messages...')
channel.start_consuming()
 

De output is:

$ python receive.py
Waiting for messages...
Received message: 'Hello'
Received message: 'World!'
 

Andere voorbeelden zijn beschikbaar in het RabbitMQ handleiding pagina voor andere talen.