Figyelmeztetés: Az oldal megtekintése csak a 18 éven felüli látogatók számára szól!
Honlapunk cookie-kat használ az Ön számára elérhető szolgáltatások és beállítások biztosításához, valamint honlapunk látogatottságának figyelemmel kíséréséhez. Igen, Elfogadom

Electronica.hu | Az elektrotechnika alapfogalmai : Elektrotechnika | Elektronika



...


...
...


A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Advanced Message Queuing Protocol

Az Advanced Message Queuing Protocol (AMQP) egy alkalmazási réteg protokoll, amely üzenet orientált middleware-ek működését határozza meg. Az AMQP meghatározó értékei: üzenet központúság, sorkezelés, üzenetirányítás, megbízhatóság, biztonság. Az AMQP 5 különböző üzenettovábbítási mintát támogat, amelyekkel pont-pont és különböző publikálás-feliratkozás típusú kommunikációs mintákat is támogat. Az AMQP 1.0 ISO szabvány (ISO/IEC 19464:2014 Information technology -- Advanced Message Queuing Protocol (AMQP) v1.0 specification) és OASIS szabvány is (OASIS Advanced Message Queuing Protocol (AMQP)).

Története

Az AMQP fejlesztésének eredeti célja az üznetküldésben a különböző platformok és üzenetbrókerek között jelentkező gyakori együttműködési problémák megoldása volt. Az AMQP-t eredetileg 2003-ban John O ' Hara fejlesztette JPMorgan Chase-nél, Londonban.[1] Első "éles" alkalmazása a JP Morgen-nél volt, 2006-ban. Ma a specifikációt az AMQP working group fejleszti, amelynek 23 tagja van, elsősorban a pénzügyi és technológiai szektorokból.

Összevetés a JMS-szel

Gyakori kérdés, hogy a JMS és az AMQP közötti különbség miben is áll?

A JMS egy olyan szabvány, amelynek célja, hogy a Java platformon szabványos felületet nyújtson különböző üzenetbrókerek eléréséhez. Nem célja ugyanakkor, hogy a Javától eltérő platformokkal vagy nyelvekkel való együttműködést támogassa. Ezért a Java és más nyelvek (pl. .NET vagy Ruby) közötti üzenetalapú együttműködés csak az egyes platformokon támogatott eltérő szabványok (pl. JMS - STOMP) közötti transzformációkon keresztül lehetséges. Ugyan több üzenetbróker is támogat ilyen transzformációkat (pl. az ActiveMQ), ám – mivel az átalakítások nem szabványosított eljárásokon alapulnak – ezek használata esetén a konkrét megoldással szembeni kitettség alakul ki.

Az AMQP célja elsősorban a különböző platformok közötti együttműködési képesség megteremtése. A JMS-sel szemben nem definiál egyetlen nyelvhez sem konkrét programozási felületet (API-t). Ehelyett egy alacsony szintű, bináris protokollt határoz meg, ami arról szól, hogy milyen struktúrában és milyen módon kell egy üzenetet a hálózaton keresztül továbbítani. Az AMQP-üzenetbróker egy olyan program, amely képes a meghatározott formában a feladótól üzeneteket fogadni, és a meghatározott módon azokat a címzetthez továbbítani. Az AMQP kliens egy olyan program, amely képes a meghatározott módon üzeneteket küldeni az AMQP-brókernek, és üzeneteket fogadni tőle. Mivel az üzenetküldés és továbbítás módja, valamint az üzenetek struktúrája teljes mértékben szabványosított, így biztosított, hogy az egyes AMQP-brókerek, illetve kliensek szabadon kicserélhetők tetszőleges másik implementációra.

Az AMQP ugyanakkor -- mint azt már említettük -- nem foglalkozik azzal, hogy az egyes platformokon illetve programnyelveken hogyan kell megvalósítani azt az API-t, amin keresztül a kliens funkciók meghívhatók; ezt a kérdést a kliens fejlesztőjére hagyja, aki így az adott platform és programnyelv sajátosságait figyelembe véve tudja az API-t kifejleszteni.

A fentieken túl a JMS és az AMQP között eltérés van az üzenet irányítás (routing), a támogatott üzenetküldési minták és az üzenet felépítésben is. Ezen különbségek számottevőek, ugyanakkor a két szabvány egymáshoz mégis eléggé hasonlít ahhoz, hogy a köztük végzett transzformáció ne okozzon komolyabb problémát. A JMS széles körű elterjedtsége és támogatása okán az AMQP working groupnál elindult egy kezdeményezés, hogy szabványosítsák a JMS és az AMQP közötti üzenet átalakítást.

Implementációk

AMQP 1.0 bróker megvalósítások

Pre-1.0 AMQP-bróker megvalósítások

  • JORAM, a Java nyílt forráskódú megvalósítása az OW2 Konzorcium kezelésében.
  • Apache Qpid, amely több AMQP verzióhoz nyújt támogatást[2]
  • StormMQ, egy hostolt, kereskedelmi jellegű message queuing szolgáltatás AMQP-alapon.
  • RabbitMQ, egy nyílt forráskódú projekt; elsődlegesen az AMQP 0-9-1 verziót támogatja, de kísérleti pluginnel már az 1.0 verzió is használható.

Kliensek

  • SwiftMQ AMQP 1.0 Java Client - ingyenes Java Client (AMQP 1.0)
  • DE.SETF.AMQP Lisp Client Library (AMQP 0-9-1)
  • Spring AMQP (AMQP 0-9-1.)

Jegyzetek

  1. Hintjens, Pieter: Background to the AMQ Project, Authors. iMatix Corporation, 2006. február 7. (Hozzáférés: 2018. február 18.)
  2. https://web.archive.org/web/20130914045254/http://qpid.apache.org/releases/qpid-0.22/index.html

Fordítás

Ez a szócikk részben vagy egészben az Advanced Message Queuing Protocol című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

További információk

AMQP weboldal

Információ forrás: https://hu.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol
A lap szövege Creative Commons Nevezd meg! – Így add tovább! 3.0 licenc alatt van; egyes esetekben más módon is felhasználható. Részletekért lásd a felhasználási feltételeket.
Zdroj: Wikipedia.org - čítajte viac o Advanced Message Queuing Protocol





A lap szövege Creative Commons Nevezd meg! – Így add tovább! 3.0 licenc alatt van; egyes esetekben más módon is felhasználható. Részletekért lásd a felhasználási feltételeket.