RabbitMQ Exchanges

În rabbitmq, atunci când producătorul creează un mesaj care nu va fi trimis direct la o coadă, în schimb, mai întâi mesajul va fi trimis la schimburi, după care un agent de rutare îl citește și îl trimite la coada corespunzătoare cu ajutorul atributelor antetului, al legăturilor și al cheilor de rutare.

Tipurile de schimburi RabbitMQ

În rabbitmq, avem patru tipuri de schimburi disponibile pentru a ruta mesajul în moduri diferite.

În continuare sunt prezentate diferitele tipuri de schimburi disponibile în rabbitmq.

  • Direct
  • Fanout
  • Topic
  • Headers

RabbitMQ Direct Exchange

În rabbitmq, schimbul direct va livra un mesaj către cozile de așteptare pe baza cheii de rutare a mesajelor. În schimbul direct, mesajul este direcționat către cozile de așteptare a căror cheie de legare se potrivește exact cu cheia de rutare a mesajului.

În continuare este reprezentarea picturală a fluxului de mesaje în schimbul direct rabbit.

Diagrama fluxului procesului de schimb direct RabbitMQ

RabbitMQ Fanout Exchange

În rabbitmq, fanout exchange va ruta mesajele către toate cozile de așteptare care sunt legate de el.

Continuarea este reprezentarea picturală a fluxului de mesaje în rabbitmq fanout exchange.Diagrama fluxului procesului de schimb Fanout Exchange RabbitMQ

RabbitMQ Topic Exchange

În rabbitmq, schimbul de subiecte va efectua o potrivire de tip wildcard între cheia de rutare și modelul de rutare specificat în legătură pentru a publica un mesaj în coadă.

Continuarea este reprezentarea picturală a fluxului de mesaje în schimbul de subiecte rabbitmq.

RabbitMQ Topic Exchange Process Flow Diagram

RabbitMQ Headers Exchange

În rabbitmq, schimburile de antet vor utiliza atributele antetului mesajului pentru rutare.

Continuăm cu reprezentarea picturală a fluxului de mesaje în schimbul de antet rabbitmq.

Diagrama fluxului procesului de schimb de antet RabbitMQ Headers Exchange

Acum vom vedea cum să adăugăm schimburi în rabbitmq utilizând pluginul de gestionare web.

RabbitMQ Create Exchange

Pentru a crea noi schimburi, deschideți mai întâi portalul de gestionare web rabbtimq, introduceți un credențial implicit pentru a vă conecta și apoi alegeți fila Exchanges.

RabbitMQ Server Web Management Web Management Screen Login Screen

După ce ați navigat în fila Exchanges, veți vedea “Add a new exchange panel” (Adăugați un nou panou de schimb), trebuie doar să faceți clic pe acel panou pentru a-l extinde și acesta va conține diferite proprietăți pentru a crea un nou schimb, așa cum se arată mai jos.

Crearea unui nou schimb în rabbitmq

Proprietăți ale schimbului RabbitMQ

În cele ce urmează sunt diferite tipuri de proprietăți pe care trebuie să le completăm pentru a crea un nou schimb în rabbitmq.

Proprietate Descriere
Nume Numele va fi un nume de schimb pe care îl veți seta și trebuie să fie unic.
Type Puteți selecta tipul de schimb necesar, fie topic, fie fanout, etc., în funcție de cerințele dumneavoastră.
Durability Prin utilizarea proprietăților de durabilitate (Durable, Transient), putem face ca mesajul să supraviețuiască chiar și după repornirea serverului. Dacă selectăm Durable, atunci mesajul va supraviețui chiar și după repornirea serverului. În cazul în care, dacă selectăm Tansient, atunci mesajul nu va rezista după repornirea serverului.
Auto Delete Prin utilizarea proprietății de ștergere automată, putem stabili dacă un schimb poate fi șters în cazul în care dezlegăm coada de așteptare atribuită.
Internal Dacă setăm această proprietate la “yes”, atunci schimbul nu poate fi utilizat direct de către editori, ci numai atunci când este legat de alte schimburi.
Alternate-exchange Dacă există o problemă în publicarea mesajelor către exchange, atunci, prin utilizarea acestei proprietăți, putem specifica un exchange alternativ pentru a trimite un mesaj la coadă.

După ce introducem toate detaliile necesare, apoi facem clic pe butonul Add exchange (Adaugă exchange) pentru a crea un nou exchange, așa cum se arată mai jos.

Lasă un răspuns

Adresa ta de email nu va fi publicată.