Rabbitmq:ssä, kun tuottaja luo viestin, jota ei lähetetä suoraan jonoon, vaan ensin viesti lähetetään vaihtoon, jonka jälkeen reititysagentti lukee ja lähettää sen sopivaan jonoon otsikkoattribuuttien, sidontojen ja reititysavaimien avulla.
RabbitMQ:n vaihtotyypit
Rabbitmq:ssä on käytettävissä neljä vaihtotyyppiä, joilla viesti voidaan reitittää eri tavoin.
Seuraavat ovat erilaisia vaihtotyyppejä, jotka ovat käytettävissä rabbitmq:ssä.
- Suora
- Fanout
- Topic
- Headers
RabbitMQ:n suora vaihto
Rabbitmq:ssä suora vaihto välittää viestit jonoihin viestin reititysavainta käyttäen. Suorassa vaihdossa viesti ohjataan niihin jonoihin, joiden sidonta-avain täsmälleen vastaa viestin reititysavainta.
Seuraavassa on kuvallinen esitys sanomavirrasta rabbitin suorassa vaihdossa.
RabbitMQ Fanout Exchange
Rabbitmq:ssä fanout exchange reitittää viestit kaikkiin siihen sidottuihin jonoihin.
Seuraava on kuvallinen esitys sanomavirrasta rabbitmq:n fanout exchangeissa.
RabbitMQ Topic Exchange
Rabbitmq:ssä topic exchange suorittaa jokerimerkkivertailun reititysavaimen ja sidonnassa määritellyn reitityskuvion välillä julkaistaakseen viestit jonoon.
Seuraava on kuvallinen esitys sanomavirrasta rabbitmq topic exchange:ssa.
RabbitMQ Headers Exchange
Rabbitmq:ssä headers exchange käyttää viestin header-attribuutteja reititykseen.
Seuraava on kuvallinen esitys sanomavirrasta rabbitmq headers exchange:ssa.
Katsomme nyt, miten vaihdot lisätään rabbitmq:ssä web management -lisäosan avulla.
RabbitMQ Create Exchange
Luoaksesi uusia vaihtoja avaa ensin rabbtimq web management -portaali, syötä sisäänkirjautumista varten oletusarvoisilla kirjautumistiedoilla ja valitse sitten Exchanges-välilehti.
Navigoituasi Exchanges-välilehdelle näet “Add a new exchange panel” (Lisää uusi vaihto) -paneelin klikkaamalla kyseistä paneelia laajentaaksesi sitä, ja se sisältää erilaisia ominaisuuksia uuden vaihdon luomiseen alla olevan kuvan mukaisesti.
RabbitMQ:n vaihto-ominaisuudet
Seuraavat ovat erityyppisiä ominaisuuksia, jotka meidän on täytettävä luodaksemme uuden vaihdon rabbitmq:ssä.
Ominaisuus | Kuvaus | |
---|---|---|
Nimi | Nimi on vaihdon nimi, jonka asetat ja sen on oltava uniikki. | |
Type | Voit valita vaaditun vaihtotyypin joko topic tai fanout jne. tarpeidesi mukaan. | |
Durability | Käyttämällä durability (Durable, Transient) -ominaisuuksia saamme viestin säilymään palvelimen uudelleenkäynnistyksen jälkeenkin. Jos valitsemme Durable, viesti säilyy myös palvelimen uudelleenkäynnistyksen jälkeen. Jos taas valitsemme Tansient, niin viesti ei palvele palvelimen uudelleenkäynnistyksen jälkeen. | |
Auto Delete | Automaattinen poistaminen | Automaattinen poistaminen -ominaisuutta käyttämällä voimme asettaa, voiko vaihto poistaa, jos irrotamme sidotun jonon. |
Sisäiset | Jos asetamme tämän ominaisuuden “kyllä” (yes), niin vaihde ei ole suoraan julkaisijain käytössä, vaan se on vain sidottu toisiin vaihtoihin. | |
Alternate-exchange | Jos viestin julkaisemisessa pörssiin on ongelmia, voimme tämän ominaisuuden avulla määrittää vaihtoehtoisen pörssin lähettämään viestin jonoon. |
Kunhan olemme syöttäneet kaikki vaaditut tiedot, napsauttamalla Lisää pörssi -painiketta luomme uuden pörssin alla olevan kuvan mukaisesti.