IBM MQ - IBM MQ
IBM MQ je rodina middleware orientovaný na zprávy výrobky, které IBM zahájen v prosinci 1993. Původně se jmenoval MQSeriesa byl přejmenován WebSphere MQ v roce 2002 se připojit k sadě WebSphere produkty. V dubnu 2014 byla přejmenována IBM MQ. Produkty, které jsou součástí rodiny MQ, jsou IBM MQ, IBM MQ Advanced, IBM MQ Appliance, IBM MQ for z / OS a IBM MQ on IBM Cloud. IBM MQ má také možnosti kontejnerového nasazení.
MQ umožňuje nezávislé a potenciálně nesouběžné aplikace na a distribuovaný systém bezpečně spolu komunikovat pomocí zpráv. MQ je k dispozici na velkém počtu platforem (IBM i jiných než IBM), včetně z / OS (mainframe ), OS / 400 (IBM System i nebo AS / 400 ), Zařízení pro zpracování transakcí, UNIX (AIX, HP-UX, Solaris ), HP Nepřetržitě, OpenVMS, Linux, a Microsoft Windows.
Komponenty MQ
Hlavní součásti MQ jsou:
- Zpráva: Zprávy jsou sbírky binární nebo znak (například ASCII nebo EBCDIC ) data, která mají pro zúčastněný program nějaký význam. Jako v jiných komunikační protokoly, informace o ukládání, směrování a doručení jsou přidány ke zprávě před přenosem a odstraněny ze zprávy před doručením do přijímající aplikace.
- Fronta: Fronty zpráv jsou objekty, které ukládají zprávy v aplikaci.
- Správce front: systémová služba, která poskytuje logický kontejner pro frontu zpráv. Je odpovědný za přenos dat dalším správcům front prostřednictvím kanálů zpráv. Ačkoli to není nezbytně vyžadováno pro middleware zaměřený na zprávy, je předpokladem produktu IBM MQ. Správci front zpracovávají úložiště, problémy s načasováním, spouštění a všechny ostatní funkce, které přímo nesouvisejí se skutečným pohybem dat.
Programy integrované s IBM MQ používají konzistentní rozhraní aplikačních programů (API) napříč všemi platformami.
Typy zpráv
MQ podporuje point-to-point a Publikovat - Přihlásit se k odběru zasílání zpráv.
API
API přímo podporovaná IBM zahrnují:
- IBM Message Queue Interface (MQI) pro C, COBOL, PL / I., Jáva, Rexx,[1] RPG, a C ++
- Služba zpráv Java (JMS)
- XMS pro C / C ++ a .NET[2]
- .SÍŤ
- Převod reprezentativního státu
- MÝDLO
Další rozhraní API (není oficiálně podporováno) jsou k dispozici také prostřednictvím třetích stran, včetně:
- Perl rozhraní (vyvinuté a přispěl Hildo Biersma), dostupné z CPAN.[3]
- Python (programovací jazyk) rozhraní PyMQI (původně vyvinutý společností Les Smithson), k dispozici od PyPI[4]
- Windows PowerShell[5]
Funkce
Jednorázové doručení: Společnost MQ používá pouze jednou a jednou dodávku. Tato kvalita služby obvykle zabraňuje ztrátě nebo duplikaci zprávy.
Asynchronní zasílání zpráv: MQ poskytuje návrháři aplikací s mechanismem k dosažení architektury nezávislé na čase. Zprávy lze odesílat z jedné aplikace do druhé bez ohledu na to, zda jsou aplikace spuštěny současně. Pokud aplikace příjemce zprávy není spuštěna, když jí odesílatel odešle zprávu, správce front zprávu udrží, dokud si ji příjemce nevyžádá. Pořadí všech zpráv je zachováno, standardně je v FIFO pořadí přijetí v místní frontě v rámci priority zprávy.
Transformace dat: např. Velký Endian na Malý Endian nebo EBCDIC na ASCII. Toho je dosaženo použitím dat zprávy východy. Ukončení jsou kompilované aplikace, které běží na hostiteli správce front a jsou prováděny softwarem IBM MQ v době, kdy je potřeba transformace dat.
Rámec architektury založené na zprávách: IBM MQ umožňuje příjem zpráv ke „spuštění“ spuštění dalších aplikací.
Rozsah API: Implementuje Služba zpráv Java (JMS) standardní API a má také vlastní proprietární API, známé jako rozhraní pro správu front zpráv (MQI), které předcházelo několik let existenci JMS. Od verze 8.0.0.4 podporuje MQ také rozhraní MQ Light API.
Shlukování: Několik implementací MQ sdílí zpracování zpráv a zajišťuje vyvážení zátěže.
Sdělení
Manažeři front komunikují s vnějším světem buď prostřednictvím:
- Vázání: přímé softwarové připojení. Obecně rychlejší, ale omezeno na programy běžící na stejném fyzickém hostiteli jako správce front.
- Síťové nebo „klientské“ připojení: aplikace využívající připojení klienta se mohou připojit ke správci front na jakémkoli jiném hostiteli v síti. Fyzické umístění správce front je irelevantní, pokud je dosažitelné po síti.
Komunikace mezi správci front
To se spoléhá na a kanál. Každý správce front používá jeden nebo více kanálů k odesílání a přijímání dat dalším správcům front. Kanál je jednosměrný; pro vrácení dat je vyžadován druhý kanál. V síti založené na TCP / IP kanál odesílá nebo přijímá data na konkrétním portu.
Typy kanálů:
- Odesílání kanálu: má definovaný cíl a je přidružen ke konkrétní přenosové frontě (mechanismus, pomocí kterého jsou zprávy zařazeny do fronty a čekají na přenos na kanálu).
- Přijímající kanál: přijímá data od jakéhokoli jiného správce front se stejným názvem vysílajícího kanálu.
Když přijímající kanál obdrží zprávu, prozkoumá se, aby zjistil, pro kterého správce front a frontu je určen. V případě selhání komunikace může MQ po vyřešení problému automaticky znovu navázat spojení.
The posluchač je síťové rozhraní aplikace pro správce front. Posluchač detekuje připojení z příchozích kanálů a spravuje připojení vysílajících kanálů k přijímacím kanálům. V síti TCP / IP bude posluchač „naslouchat“ připojení na konkrétním portu.
Přenos dat do fronty na jiném správci front
Typy front:
- Místní fronta: představuje umístění, kde jsou uložena data čekající na zpracování.
- Vzdálená fronta: představuje frontu na jiném správci front. Definují cílovou frontu, která je jedním prvkem mechanismu směrování zpráv.
- Klastrová fronta: představuje frontu, která je dosažitelná prostřednictvím jakéhokoli správce front ve svém klastru.
Zpráva je umístěna do vzdálené fronty. Zprávy přejdou do fronty přenosu dočasného úložiště přidružené ke kanálu. Při umístění zprávy do vzdálené fronty se zpráva přenáší přes vzdálený kanál. Pokud je přenos úspěšný, zpráva bude odstraněna z přenosové fronty. Při přijetí zprávy prozkoumá přijímající správce front zprávu, aby určil, zda je zpráva pro sebe, nebo zda musí přejít k jinému správci front. Pokud je přijímající správce front, bude zkontrolována požadovaná fronta a pokud existuje, bude zpráva umístěna do této fronty. Pokud ne, je zpráva umístěna na fronta mrtvého dopisu. MQ má funkce pro správu efektivního přenosu dat napříč různými komunikačními médii. Například zprávy lze dávkovat společně, dokud fronta nedosáhne konkrétní hloubky.
Objednávání
I když je fronta FIFO, je řazena na základě příjmu v místní frontě, nikoli na potvrzení zprávy od odesílatele. Zprávy lze upřednostnit a ve výchozím nastavení je fronta upřednostněna v pořadí příjezdu. Fronty budou v pořadí přidávání, pouze pokud je zpráva přidána místně. Seskupení zpráv lze použít k zajištění, aby sada zpráv byla v určitém pořadí, kromě toho, pokud je posloupnost kritická, je odpovědností aplikace umístit data posloupnosti do zprávy nebo implementovat mechanismus handshaking prostřednictvím návratové fronty. Ve skutečnosti bude objednávání udržováno v přímých konfiguracích.
Protokol
Dalším prvkem správce front je log. Jak je zpráva umístěna do fronty nebo je provedena změna konfigurace, jsou data také zaznamenána. V případě selhání se protokol použije k opětovnému vytvoření poškozených objektů a opětovnému vytvoření zpráv. Pouze vytrvalý zprávy se znovu vytvoří, když dojde k chybě - „trvalé“ zprávy budou ztraceny. Nepřetrvávající zprávy lze odesílat přes kanál nastavený na rychlý režim, ve kterém není zajištěno doručení v případě selhání kanálu.
MQ podporuje kruhové i lineární protokolování.
Načítání zpráv z front
Informace lze načíst z front buď dotazováním fronty, aby se zkontrolovala dostupná data ve vhodných intervalech, nebo alternativně MQ může spustit událost a umožnit klientské aplikaci reagovat na doručení zprávy.
Dostupnost
IBM MQ nabízí řadu řešení pro zajištění dostupnosti:
Replikovaný správce datových front (RDQM / 'Easy HA'- MQ Advanced pouze pro distribuci):Synchronní replikace mezi třemi servery, které všechny sdílejí plovoucí IP adresu.
Klastry správce front:Skupiny dvou nebo více správců front na jednom nebo více počítačích jsou definovány v klastru, což poskytuje automatické propojení a umožňují mezi nimi sdílet fronty pro vyvažování zátěže a redundanci.
Skupiny sdílení front (pouze z / OS):V prostředí sdílené fronty se aplikace může připojit ke kterémukoli ze správců front ve skupině pro sdílení front. Protože všichni správci front ve skupině sdílení front mohou přistupovat ke stejné sadě sdílených front, aplikace nezávisí na dostupnosti konkrétního správce front. To poskytuje větší dostupnost, pokud se správce front zastaví, protože všichni ostatní správci front ve skupině sdílení front mohou pokračovat ve zpracování fronty.
Správci front s více instancemi (k dispozici od verze 7.0.0):Instance stejného správce front jsou konfigurovány na dvou nebo více počítačích s jejich frontami a metadaty uloženými ve sdíleném úložišti. Spuštěním více instancí se z jedné instance stane aktivní instance a z ostatních instancí se stanou pohotovostní režimy. Pokud aktivní instance selže, automaticky ji převezme pohotovostní instance spuštěná v jiném počítači.
Dějiny
Data vydání verze
Název verze | Datum vydání |
---|---|
IBM MQ 9.2 LTS | 23. července 2020[6] |
IBM MQ 9.1 LTS | 27. července 2018[7] |
IBM MQ na IBM Cloud | 13. března 2018 [8] |
IBM MQ pro HPE Nonstop 8.0 | 23. června 2017 |
IBM MQ 9.0 LTS | 2. června 2016 [9] |
IBM MQ 8.0 | 23. května 2014 |
WebSphere MQ 7.5 | 15. června 2012 |
WebSphere MQ 7.1 | Listopadu 2011 |
WebSphere MQ 7.0 z / OS | Červen 2008 |
WebSphere MQ 7.0 (distribuováno, iSeries) | Květen 2008 |
WebSphere MQ 6.0 z / OS | Červen 2005 |
WebSphere MQ 6.0 (distribuováno, iSeries) | Květen 2005 |
WebSphere MQ 5.3 z / OS | Červen 2002 |
WebSphere MQ 5.3 (distribuováno, iSeries) | Červen, červenec, říjen, listopad 2002 |
MQSeries 5.2 (distribuováno) | Prosince 2000 |
MQSeries pro OS / 390 V5.2 | Listopad 2000 |
MQSeries pro AS / 400 V5.1 | Červenec-srpen 2000 |
MQSeries pro OS / 390 V2.1 | Únor 1999 |
MQSeries 5.1 | Duben (NT), červen 1999 |
MQSeries pro AS / 400 V4.2 | Únor 1998 |
MQSeries 5.0 | Říjen 1997 |
MQSeries pro MVS / ESA 1.2 | 29. srpna 1997 [10] |
MQSeries pro MVS 1.1.4, | Červen 1996 |
MQSeries 2.2 (Sun OS / Solaris, DC / OSx) | Červen, červenec 1996 |
MQSeries 2.0 Windows NT | 2Q 1996 |
MQSeries 2.2 (HP, SCO) | 4Q 1995 |
MQSeries pro MVS 1.1.3 | Květen 1995 |
MQSeries 2.0 (OS / 2, AIX) | Únor 1995 (začátek konce ezBridge) |
MQM / 400 V3 | 4Q 1994 |
ezBridge Transact pro MQSeries 3.0 | Červenec 1994 |
MQSeries pro MVS 1.1.2 | Červen 1994 |
MQM / 400 V2.3 | Únor / duben 1994 |
ezBridge Transact pro MQSeries | Březen, září, listopad, DSA |
MQSeries pro MVS V1.1.1 | 31. prosince 1993 |
Verze Konec služby
Přečtěte si prosím Životní cyklus softwarové podpory IBM stránky s aktuálními informacemi o datech ukončení podpory. Následující tabulka platí pro software MQ. Zařízení MQ Appliance má jiná data životního cyklu firmwaru i hardwaru než ta, která jsou uvedena v tabulce.
Název verze | Obecná dostupnost | Konec marketingu | Konec podpory |
---|---|---|---|
IBM MQ 9.1 | 23. července 2018 | - | - |
IBM MQ 9.0 | 02. června 2016 | 17. září 2021 | 30. září 2021 |
IBM MQ 8.0 | 13. června 2014 | 17. dubna 2020 | 30. dubna 2020 |
WebSphere MQ 7.5 | 6. července 2012 | 16. prosince 2016 | 30. dubna 2018 |
WebSphere MQ 7.1 | 25. listopadu 2011 | 12. července 2016 | 30. dubna 2017 |
Pozadí architektonické reference
S příchodem počítačů spatřila IBM příležitost uplatnit novou technologii na potřebu přepínání zpráv.
Na začátku šedesátých let uvedla společnost IBM na trh komunikační komunikační systém IBM 7740 a programovou kontrolu přenosu IBM 7750, což byly programovatelné systémy pro přepínání zpráv.
IBM System / 360 byl oznámen v dubnu 1964 a spolu s ním přišly metody přístupu ke komunikaci, jako jsou BTAM a QTAM (základní a fronty telekomunikačních přístupových metod). V roce 1971 TCAM, Metoda telekomunikačního přístupu, nabídl svým uživatelům pokročilejší formu přepínání zpráv nebo směrování zpráv. TCAM byl široce přijímaný, zejména ve finančním a makléřském průmyslu. Podporoval asynchronní zasílání zpráv, jako u pozdějšího MQ. TCAM 3.0 byl brzy poté přidán do fronty zpráv na opakovaně použitelné disky pro obnovení, stejně jako u MQ. K přístupu k TRANSIENTNÍm datovým sadám (dynamické fronty zpráv) lze použít program vysoké úrovně PL / I. Čtení zprávy z přechodné datové sady mělo za následek odstranění této zprávy z fronty, stejně jako u neprocházeného READ s MQ.
Na konci 70. let vznikly systémy pro správu transakcí, z nichž každý se snažil dosáhnout vedoucí pozice v tomto odvětví. V rámci IBM CICS a IMS byly vybrány jako strategické produkty k řešení potřeby správy transakcí. V rámci CICS i IMS měla každá svou verzi přepínání zpráv, přičemž IMS byl front-endový systém ve frontě a CICS disponující zařízením pro přechodná data jako možným základem pro přepínání zpráv. [Citace ??]
CICS se etablovala jako populární systém pro správu transakcí v časovém rámci 1968-1971. Ti uživatelé, kteří přijali TCAM pro své schopnosti zpracování zpráv, nyní chtěli kombinované použití TCAM s CICS. V prosinci 1971, IBM oznámila podporu TCICS CAM jako součást produktu CICS / OS-Standard, který bude dodán v prosinci 1972. Pro zákazníky, kteří mají zájem, to jim umožnilo používat TCAM pro své silné stránky zpracování zpráv a také mít terminály připojené k TCAM nebo rozhraní počítačů s online aplikacemi CICS. [citace ??]
V lednu 1973 byla TCAM nadále podporována standardem CICS / OS verze 2.3. Podpora TCAM však byla od počátečního vydání CICS / VS, oznámeného v únoru 1973 a dodaného v červnu 1974, vynechána. Je zbytečné říkat, že mnoho zákazníků CICS-TCAM nebylo s tímto produktovým směrem spokojeno.
Pod značným tlakem zákazníků CICS-TCAM byla od září 1974 obnovena podpora CICS TCAM v produktu CICS / VS 1.1. Kromě předchozí podpory DCB, s tímto obnovením podpory TCAM, začala CICS podporovat přístup TCAM přes VTAM, také známý jako podpora ACB. Podpora produktu CICS TCAM ACB byla od roku 1990 od produktu CICS / ESA verze 3 ukončena.
V roce 1992 IBM oznámila nový produkt s názvem MQSeries. Tato značka byla později v roce 2002 přejmenována na „WebSphere MQ“ (někdy zkráceně na WMQ), aby podporovala název rodiny WebSphere a produkt. V roce 2014 byl přejmenován na „IBM MQ“. MQ mělo být rozšířením funkčnosti TCAM ze systémů pouze pro IBM na všechny ostatní platformy. MQ má architekturu, která umožňuje heterogenním systémům vzájemně komunikovat (např. IBM, HP, Sun, Tandem atd.). MQ lze použít se systémy CICS k odesílání a přijímání dat do / z jakéhokoli jiného systému způsobilého pro MQ. MQ lze použít k zahájení práce v systému CICS nebo transakce CICS může zahájit práci v jiném systému CICS nebo jiném systému než CICS.
Produkt IBM MQ nyní podporuje 80 různých prostředí a stal se předním produktem se zajištěním přepínání a směrování doručování zpráv v tomto odvětví.[11]
MQ a webové služby
IBM MQ lze použít jako základ pro vytváření architektury orientované na služby. Existuje několik dalších možností produktu, které pomáhají převést starší programy na funkční webové služby pomocí MQ. Větší, heterogenní podniky se často jeví jako federace poněkud autonomních domén založených na oborech podnikání, funkcích nebo oblastech správy. V takových prostředích mohou být některé služby sdíleny nebo znovu použity pouze v rámci jedné domény, zatímco jiné mohou být sdíleny nebo znovu použity v celém podniku. IBM MQ poskytuje prostředky, kterými existuje komunikace mezi obchodními liniemi nebo jinak samostatnými obchodními doménami.
Související produkt z rodiny produktů IBM MQ, tzv IBM Integration Bus (dříve WebSphere Message Broker), umožňuje rozmanitou a robustní sadu rozšíření pro architektury založené na frontách. Pomocí IBM Integration Bus mohou uživatelé implementovat front-end WebServices spolu s WSDL podpora souborů, které mohou interagovat s jakoukoli aplikací založenou na frontě.
Viz také
- Pokročilý protokol front
- IBM WebSphere Message Broker
- Služba zpráv Java
- Fronta zpráv
- Řízení front zpráv jako služba
Reference
- ^ „MA95: A REXX interface to WebSphere MQ“. Citováno 2014-10-09.
- ^ „Představujeme XMS - rozhraní IBM Message Service API“. Citováno 2007-12-06.
- ^ MQSeries - rozšíření Perl pro podporu MQSeries - search.cpan.org
- ^ "Dokumentace PyMQI". Archivovány od originál dne 17.01.2013. Citováno 2010-09-03.
- ^ „MO74: WebSphere MQ - Windows Powershell Library“. Citováno 2007-12-06.
- ^ „Oznámení IBM o produktu IBM MQ 9.2“. International Business Machines (IBM). Citováno 22. října 2020.
- ^ „Oznámení IBM o produktu IBM MQ 9.1“. International Business Machines (IBM). Citováno 6. srpna 2018.
- ^ „Oznámení IBM o produktu IBM MQ v IBM Cloud“. International Business Machines (IBM). Citováno 6. srpna 2018.
- ^ „Oznámení IBM o produktu IBM MQ 9.0“. International Business Machines (IBM). Citováno 17. června 2016.
- ^ „MQSeries pro MVS / ESA verze 1.2“. International Business Machines (IBM). Citováno 10. prosince 2018.
- ^ http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype=an&subtype=ca&supplier=897&letternum=ENUS211-395 IBM MQ je špičkový middlewarový produkt orientovaný na zprávy, který poskytuje spolehlivou a osvědčenou páteřní síť pro zasílání zpráv pro téměř 10 000 organizací různých velikostí v mnoha průmyslových odvětvích po celém světě.