A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Előző változat mindkét oldalon Előző változat Következő változat | Előző változat | ||
tanszek:oktatas:informacios_rendszerek_integralasa:uezenet_kezelo_rendszerek [2023/04/25 17:28] knehez |
tanszek:oktatas:informacios_rendszerek_integralasa:uezenet_kezelo_rendszerek [2023/05/04 21:02] (aktuális) knehez [Üzenetek életciklusa] |
||
---|---|---|---|
Sor 19: | Sor 19: | ||
Az **AMQ** modell egy nagyon hatékony és rugalmas modell, amely a hatékony üzenetkommunikáció mellett a //skálázhatóságot// és a //kézbesítés megbízhatóságát// is támogatja. Az AMQ modell több szabványosított funkcióval is rendelkezik, például a biztonsági mechanizmusokkal, a //tranzakciókezeléssel// és //egyszeri kézbesítési lehetőséggel//. | Az **AMQ** modell egy nagyon hatékony és rugalmas modell, amely a hatékony üzenetkommunikáció mellett a //skálázhatóságot// és a //kézbesítés megbízhatóságát// is támogatja. Az AMQ modell több szabványosított funkcióval is rendelkezik, például a biztonsági mechanizmusokkal, a //tranzakciókezeléssel// és //egyszeri kézbesítési lehetőséggel//. | ||
- | ===== Hasonlóság az emailekkel ===== | + | ===== Hasonlóság az email kezeléssel ===== |
- | * az üzenetsor olyan mint egy levelesláda | + | * az //üzenetsor// olyan, mint egy //levelesláda// |
* a fogyasztó vagy címzett megfelel a email kliensnek | * a fogyasztó vagy címzett megfelel a email kliensnek | ||
- | * az "Exchange" olyan szerepet tölt be, mint a (mail transfer agent), ami megvizsgálja a leveleket és a tartalmuk alapján dönt a továbbításról egy beépített szabálybázis felahsználásával. | + | * az "Exchange" olyan szerepet tölt be, mint a MTA (mail transfer agent), ami megvizsgálja a leveleket és a tartalmuk alapján dönt a továbbításról egy beépített szabálybázis felhasználásával. |
+ | * a //routing key// - útvonalválasztó kulcs, olyan mint a To: Cc: vagy Bcc címek | ||
+ | * a //binding// az MTA útvonalválasztó táblájának felel meg logikailag | ||
+ | |||
+ | Az AMPQ implementáció, üzenetsorokat, exchange-eket, bindig-eket futási időben létrehozzák és módosíthatóvá is teszik. | ||
+ | |||
+ | ===== Üzenetek életciklusa ===== | ||
+ | |||
+ | Az AMQP üzenetek életciklusa az üzenet küldője (Publisher) és az üzenet címzettje (Consumer) közötti kommunikáció során több fázisra osztható. Az alábbiakban nézzük meg az AMQP üzenetek életciklusának fontosabb fázisait: | ||
+ | |||
+ | * Kiadás (Publishing): Az üzenet küldője (Publisher) létrehozza az üzenetet és továbbítja azt a címezhető objektumokhoz (Exchange), amelyek felelősek az üzenet továbbításáért az üzenetsorokba (Queue). Egyszerűbb esetekben közvetlenül az üzenetsorok is megcímezhetők. | ||
+ | |||
+ | * Továbbítás (Routing): Az Exchange az üzenet címzettjei (Consumers) által megadott szempontok (kulcsok) alapján továbbítja az üzeneteket az egyes üzenetsorokba. | ||
+ | |||
+ | * Tárolás (Storing): Az üzenetek tárolásra kerülnek az üzenetsorokban, amíg a címzett el nem éri azokat. | ||
+ | |||
+ | * Fogyasztás (Consuming): Az üzenet címzettje (Consumer) eléri az üzenetet a megfelelő sorból, és feldolgozza azt. | ||
+ | |||
+ | * Visszaigazolás (Acknowledgment): A Consumer visszaigazolja az üzenet feldolgozását, hogy az Exchange tudja, hogy az üzenet sikeresen átment a Consumerhez. | ||
+ | |||
+ | * Törlés (Deletion): Az üzenetet törlik az üzenetsorból, hogy ne kerüljön újra feldolgozásra. | ||
+ | |||
+ | Az AMQP üzenetek életciklusa biztosítja az üzenetek megbízható továbbítását az alkalmazások között, valamint lehetővé teszi a szigorú szabályok alapján történő üzenetkezelést, például az üzenetek visszautasítását, az üzenetek késleltetését és az üzenetek újraküldését, ha azok nem érnek célba az első próbálkozásra. Un. 'halott levél' csatornát (DLQ/DLX) is létre lehet hozni, amibe automatikusan belekerülnek a kézbesítetlen vagy visszautasított üzenetek. | ||