Loading AI tools
De Wikipedia, la enciclopedia libre
RabbitMQ es un software de negociación de mensajes de código abierto que funciona como un middleware de mensajería. Implementa el estándar Advanced Message Queuing Protocol (AMQP). El servidor RabbitMQ está escrito en Erlang y utiliza el framework Open Telecom Platform (OTP) para construir sus capacidades de ejecución distribuida y conmutación ante errores. Rabbit Technologies Ltd., la compañía que lo desarrolla, fue adquirida en abril de 2010 por la división SpringSource de VMWare. A partir de este momento, es esta última compañía la que desarrolla y da soporte para RabbitMQ.[1] El código fuente está liberado bajo la licencia Mozilla Public License. A partir de mayo de 2013, por una unión de empresas, Pivotal es el nuevo patrocinador del proyecto[2]
RabbitMQ | ||
---|---|---|
Información general | ||
Tipo de programa | AMQP, middleware orientado a mensajería | |
Desarrollador | Pivotal Software | |
Licencia | Mozilla Public License | |
Estado actual | Con Soporte | |
Idiomas | Inglés | |
Información técnica | ||
Programado en | Erlang | |
Plataformas admitidas | i386, x86_64 | |
Versiones | ||
Última versión estable | 3.10.5 ( 06 de junio de 2022 (2 años, 4 meses y 16 días)) | |
Asistencia técnica | ||
Rabbit Technologies Ltd (RTL), los desarrolladores originales, ofrecen soporte a nivel de empresa y servicios relacionados con las organizaciones que utilizan RabbitMQ. También se puede encontrar documentación en su website, así como información de instalaciones de RabbitMQ realizadas sin ninguna clase de soporte (in the wild). | ||
Enlaces | ||
El proyecto RabbitMQ consta de diferentes partes:
Esta sección da ejemplos de uso en Python (usando el paquete Pika) para un emisor y un receptor de mensajes.
El siguiente fragmento de código establece la conexión, se asegura de que la cola de mensajes existe, envía el mensaje y finalmente cierra la conexión.
#!/usr/bin/env python
import pika # Importamos el paquete Pika
connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost')) # Obtenemos la conexión al servidor
channel = connection.channel() # Creamos el canal de comunicación
channel.queue_declare(queue='hello') # Declaramos la cola de mensajes
channel.basic_publish(exchange='', routing_key='hello', body='Hola Mundo!') # Publicamos el mensaje en la cola
print(" [x] Sent 'Hola Mundo!'") # Mostramos lo enviado por pantalla
connection.close() # Cerramos la conexión.
Similarmente, el siguiente programa recibe el mensaje y lo imprime en pantalla:
#!/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(queue='hello', on_message_callback=callback)
channel.start_consuming()
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.