Üzenetorientált köztes szoftver
Message-orientált middleware vagy Message Oriented Middleware ( MOM ) jelöli middleware működő aszinkron vagy szinkron kommunikáció , azaz az átviteli üzenetek ( angolul üzenetek alapul). Az üzenetek formátuma nem rögzített, de a gyakorlatban az XML vált népszerű formátumgá.
A MOM három különböző kommunikációs protokollt támogat
- Üzenetek továbbítása (közvetlen kommunikáció az alkalmazások között)
- Üzenetsorok (közvetett kommunikáció várólistán keresztül )
- Közzététel és feliratkozás (a kiadó elérhetővé teszi az üzeneteket az előfizetők számára)
előnyöket
- Aszinkron / szinkron kommunikáció
- A szervernek / szolgáltatásnak nem kell azonnal elérhetőnek lennie
- Üzenetsorok
- Többnyire gyorsabb végrehajtás, mint a függvényhívás-alapú programok
- A kiszolgáló / kliensek laza összekapcsolása
- Nagyobb tolerancia a meglévő funkciók változásával szemben
- A rendszerek jobb elérhetősége
- Az üzenetek párhuzamos feldolgozása lehetséges
hátrány
- A MOM meghibásodása megbénítja az összes csatlakoztatott rendszert
- Az alkatrészek tervezése , tesztelése , hibakeresése és fejlesztése nem ismert a szinkron programozók számára
Szabványok és formátumok
- Üzenetorientált köztes szoftver XML-mel
- Az gyakorlatban széles körben elterjedt az XML használata az Message Oriented Middleware üzeneteinek nyelvalapjaként. A viszonylag magától értetődő és a bináris formátumú üzenetekkel ellentétben az ember által könnyen olvasható formátum miatt az XML használatakor viszonylag könnyű bekapcsolni a köztes szoftverek közötti kommunikációt, ha különböző nyelveket használnak, mindaddig, amíg a nyelvek XML-alapú. A kommunikáció lehetővé tétele érdekében fordítóként beilleszthető egy XSLT processzor , amely egy átalakítási stíluslap segítségével lefordítja az üzeneteket a forrásrendszer XML-alapú nyelvéből a célrendszer nyelvére. A SOAP- ot gyakran használják protokollként .
- XML
- Az XML jelölőnyelvet ma széles körben használják az informatikában, és számos alkalmazási területen használják. Ez nem koncepcionális követelmény az Enterprise Service Bus (ESB) számára, de az ESB termékek többségében és az alkalmazott tájakon megvalósított ESB-k sokféleképpen használják. Gyakran szolgál szabványosított adatok formátum, amelyben az üzenetek kerülnek átvitelre a üzenet busz a lényege egy ESB, hanem a méret a közötti üzenetváltás szolgáltatások és az üzenet busz keresztül a megfelelő végpontokat és adapterek. Az interfészek leírásában is használják, például a WSDL interfész specifikációs nyelvvel .
- XPath és XQuery
- Az XPath és az XQuery olyan lekérdező nyelvek , amelyekkel az XML dokumentumok egyes részei lekérdezhetők és kinyerhetők. Ezek nem előfeltételei az ESB-nek, de gyakran használják az ESB-k az útválasztási szolgáltatások összefüggésében. A vezérlési adatokon vagy az üzenetek tartalmán alapuló útválasztási szabályokat gyakran XPath vagy XQuery kifejezésekként fogalmazzák meg ezekhez az üzenetekhez.
- XSLT
- Az XSL Transformation (XSLT) egy programozási nyelv az XML dokumentumok átalakításához . Az XSLT nem technológiai követelmény az ESB számára. A nyelvet azonban gyakran használják az átalakítási szolgáltatásokban, különösen akkor, ha az ESB szabványosított adatformátumként XML-t használ.
- JMS
- Java Message Service (JMS) egy szabványosított programozási felület a küldő és a fogadó üzenetek származó Java- alapú alkalmazások keresztül üzenet buszon . Ez nem követelmény az ESB számára. Azok az ESB-k, amelyek szilárdan rögzülnek a Java-világban, például azért, mert maguk a Java-ban vannak megvalósítva, gyakran kínálnak szabványos adaptereket és szabványos végpontokat, hogy a szolgáltatások JMS-en keresztül használhassák az ESB-t.
- A JMS a leggyakrabban használt szabvány a MOM-okhoz, és szinte minden gyártó támogatja.
- SZAPPAN
- A SOAP egy hálózati protokoll , amelynek segítségével az adatok cserélhetők a rendszerek között, és a szolgáltatási felületek a távoli szolgálatok számára használhatók. A SOAP széles körben használt technológiákon alapul, például HTTP és SMTP protokollként, XML adatformátumként vagy WSDL mint az interfész specifikáció nyelve. Olyan szolgáltatások, amelyek interfészeiket e technológia segítségével teszik elérhetővé, úgynevezett webszolgáltatások vagy webszolgáltatások . Az Enterprise Service Bus koncepciója nem korlátozódik a webes szolgáltatásokra vagy a SOAP technológiára. A gyakorlatban azonban egy ESB gyakran integrálja elosztott szolgáltatások csatlakoztatja őket a központi üzenetet busz a SOAP adapterek .
- AMQP
- Az Advanced Message Queuing Protocol (AMQP) egy vezetékes szintű protokoll, amelyet egy több mint 20 tagból álló konzorcium (köztük JP Morgan, Microsoft, Red Hat) fejleszt ki. 2010 májusában közzétették az 1. verzió tervezetét. A JMS széles körű használatának figyelembevétele érdekében az összes JMS funkció beépül a protokollba. Ez lehetővé teszi a fejlesztők számára, hogy továbbra is használják a JMS felületet, míg a MOM-ok az AMQP használatával kommunikálhatnak egymással.
- JBI
- A Java Business Integration (JBI) egy olyan szabványra utal, amelyet a Java Community Process keretében a JSR 208. szám alatt tettek közzé (JCP). A dokumentum szabványosítja az Enterprise Service Bus architektúrájának egy részét egy adott technikai környezethez, nevezetesen a szoftverfejlesztést és az IT-architektúrát a Java Platform, Enterprise Edition (Jakarta EE) alapján. Kifejezetten részletezi az ESB alrendszerének felépítését, amelyet Chappell a szerviz konténernek nevezett .
- Apache OpenWire
- Vezetékes szintű protokoll, amelyet eddig csak az Apache ActiveMQ támogatott.
- Apache Streaming szövegorientált üzenetkezelési protokoll (Stomp)
- Nagyon egyszerű szöveges protokoll. Natív támogatás az ActiveMQ-tól (bejelentve a RedHat HornetQ-hoz) és az xmlBlaster. A JMS middleware-hez azonban adaptert kínálnak, hogy a STOMP kliensek kommunikálni tudjanak a JMS middleware-en keresztül. Meg kell azonban jegyezni, hogy ez csak egy irányban működik (STOMP → JMS) (a STOMP funkcionalitásának hiánya miatt).
- Digistan RestMS (RESTful Messaging Service)
- A RestMS tiszta HTTP / HTTPS protokollon keresztül működik, és webes alkalmazásokhoz készült. Eddig három megvalósítás létezik. Ezenkívül az AMQP 0.9.1 konverziói is megvalósításra kerülnek.
MOM termékek
A következő termékek a MOM termékek önkényes kiválasztása a piacon:
- Websphere MQ az IBM-től (korábban MQSeries )
- xmlBlaster az xmlBlaster.org webhelyről
- Apache ActiveMQ mint JMS iroda, adott esetben is Apache teve (mind a Apache Software Foundation )
- RabbitMQ mint AMQP bróker
- Fiorano ESB és Fiorano MQ a Fiorano Software-től
- SAP folyamatintegráció az SAP-ból
- Minden Jakarta EE - alkalmazásszerver (JMS támogatással)
- Microsoft Message Queue / Microsoft Message Queue Server
- Zenekar a soffico GmbH-tól
Lásd még
- Enterprise Service Bus - nagyrészt a MOM-on alapul
- Java Business Integration ( JSR 208) - egy MOM architektúrát tartalmaz
web Linkek
- Üzenetorientált köztes szoftver az XMLBlaster példájával . (PDF; 577 kB) - Bielefeldi Egyetem , előadás az XML és az intelligens rendszerek szemináriumon
Egyéni bizonyíték
- ↑ Ten-Hove 2005
- ↑ Chappell 2004
- ↑ Ten-Hove 2005, 8. o. "A JBI meghatározza, hogy az Enterprise Service Bus (ESB) rendszerekben néha„ szolgáltatási konténert ”neveznek."
- ↑ Zenekar - jól átgondolt szoftver, amely szórakoztató . (PDF 68kB), a Krankenhaus-IT Journal 2/2013. Szám, 66. o., Hozzáférés: 2015. február 20.