RabbitMQ Exchanges

En rabbitmq, cuando el productor crea un mensaje que no se enviará directamente a una cola, en su lugar, primero el mensaje se enviará a los intercambios, a continuación, un agente de enrutamiento lee y lo envía a la cola apropiada con la ayuda de los atributos de la cabecera, los enlaces, y las claves de enrutamiento.

Tipos de intercambio de RabbitMQ

En rabbitmq, tenemos cuatro tipos de intercambios disponibles para enrutar el mensaje de diferentes maneras.

Los siguientes son los diferentes tipos de intercambios disponibles en rabbitmq.

  • Direct
  • Fanout
  • Topic
  • Headers

Intercambio directo de RabbitMQ

En rabbitmq, el intercambio directo entregará un mensaje a las colas basado en la clave de enrutamiento del mensaje. En el intercambio directo, el mensaje se dirige a las colas cuya clave de enlace coincide exactamente con la clave de enrutamiento del mensaje.

La siguiente es la representación pictórica del flujo de mensajes en el intercambio directo de rabbit.

Diagrama de flujo del proceso de intercambio directo de RabbitMQ

Intercambio fanout de RabbitMQ

En rabbitmq, el intercambio fanout enrutará los mensajes a todas las colas que estén vinculadas a él.

A continuación se muestra la representación pictórica del flujo de mensajes en el intercambio fanout de rabbitmq.Diagrama de flujo del proceso de intercambio de fanout de rabbitmq

Intercambio de temas de rabbitmq

En rabbitmq, el intercambio de temas realizará una coincidencia de comodines entre la clave de enrutamiento y el patrón de enrutamiento especificado en el enlace para publicar un mensaje en la cola.

A continuación se muestra la representación pictórica del flujo de mensajes en el intercambio de temas de rabbitmq.

Diagrama de flujo del proceso de intercambio de temas de rabbitmq

Intercambio de cabeceras de rabbitmq

En rabbitmq, los intercambios de cabeceras utilizarán los atributos de las cabeceras de los mensajes para el enrutamiento.

A continuación se muestra la representación pictórica del flujo de mensajes en el intercambio de cabeceras de rabbitmq.

Diagrama del proceso de intercambio de cabeceras de RabbitMQ

Ahora veremos cómo añadir intercambios en rabbitmq utilizando el plugin de gestión web.

RabbitMQ Create Exchange

Para crear nuevos intercambios, primero abra el portal de gestión web de rabbtimq, introduzca unas credenciales predeterminadas para iniciar sesión y luego elija la pestaña Exchanges.

Pantalla de inicio de sesión del servidor RabbitMQ

Después de navegar a la pestaña Exchanges, verá “Add a new exchange panel” simplemente haga clic en ese panel para expandirlo y que contendrá una propiedades diferentes para crear un nuevo intercambio como se muestra a continuación.

Creando un nuevo intercambio en rabbitmq

Propiedades de los intercambios en rabbitMQ

A continuación se muestran los diferentes tipos de propiedades que necesitamos rellenar para crear un nuevo intercambio en rabbitmq.

Property Description
Name El nombre será un nombre de intercambio que se establecerá y debe ser único.
Tipo Puede seleccionar el tipo de intercambio requerido, ya sea topic o fanout, etc. en función de sus necesidades.
Durabilidad Al utilizar las propiedades de durabilidad (Durable, Transient), podemos hacer que el mensaje sobreviva incluso después de reiniciar el servidor. Si seleccionamos Durable, entonces el mensaje sobrevivirá incluso después de reiniciar el servidor. Si seleccionamos Tansient, entonces el mensaje no sobrevivirá después de reiniciar el servidor.
Auto Delete Al utilizar la propiedad auto delete, podemos establecer si un intercambio puede eliminar si desvinculamos la cola asignada.
Internal Si establecemos esta propiedad sí, entonces el intercambio no puede ser utilizado directamente por los editores, sino sólo cuando está vinculado a otros intercambios.
Alternate-exchange Si hay un problema en la publicación de un mensaje a un intercambio, entonces usando esta propiedad, podemos especificar un intercambio alternativo para enviar un mensaje a la cola.

Una vez que introducimos todos los detalles requeridos, a continuación, haga clic en el botón Añadir intercambio para crear un nuevo intercambio como se muestra a continuación.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.