Üzenetorientált köztesréteg

Üzenet-orientált köztesréteg (angolul Message-oriented middleware (MOM)) egy szoftver vagy hardver architektúra, mely az elosztott rendszerek közti üzenetek küldésében és fogadásában segédkezik. A MOM segítségével az alkalmazás egyes moduljai elhelyezhetők heterogén platformokon, így csökkentve a többféle operációs rendszerre és hálózati protokollra átnyúló szoftverek fejlesztésének komplexitását. A köztes réteg egy elosztott kommunikációs réteget valósít meg, amely elrejti a fejlesztő elől a különböző operációs rendszerekhez és hálózati interfészekhez tartozó sajátosságokat. Az olyan APIk, amelyek átnyúlnak különböző platformokra általában MOM-ot[1] használnak.

A MOM olyan komponenseket kínál, amely minden, a kliens-szerver kommunikációban részt vevő elemben elhelyezésre kerül, és általában az aszinkron hívásokat támogatja a kliens és a szerver között. A MOM csökkenti a szoftverfejlesztők munkáját a kliens-szerver mechanizmusban lévő mester-szolga kapcsolat megvalósításánál.

Eredet

Motiváció

A bankok a hatvanas évek óta az ügyfeleik adatait a központi számítógépükben tárolták. Ezek a gépek továbbra is nagy terhelés alatt állnak. Ezeken eszközöltek néhány újítást. Habár az úttörő volt, hogy a bankok olyan PC alapú alkalmazásokat mutattak be, melyek olyan szolgáltatásokat nyújtottak az ügyfeleknek, amilyenek eddig a központi számítógéppel nem voltak megvalósíthatók. Ezek valamelyest csökkentették a központi gépek hasznosságát. Ideális esetben ezek a PC-s alkalmazások összeköttetésben vannak a központi géppel, és megosztják egymással az adataikat. A központi számítógép adataihoz való hozzáférés két fő előnnyel jár:

  • Az új PC-s alkalmazások helyettesítik a nem felhasználóbarát központi terminálokat.
  • új módon tudják hasznosítani ezek a PC-s alkalmazások a központi gép adatait – ezek eddig megszorításokba ütköztek a központi gép szoftvere miatt


Az 1980-as évek végéig a rendszer integrátoroknak nehéz dolga volt ezeknek az alkalmazásoknak az összekapcsolásánál. A fejlesztők a következő problémák találták magukat szembe:

  • minden egyes rendszerhez külön szoftveradaptereket kellett létrehozni, amelyek értelmezik az adatokat a cél rendszer számára (és vissza is)
  • a feldolgozási sebesség az egyes rendszerekben különböző lehet. Például, ha a központi számítógép lassabb mint a PC, akkor annak be kell várni a központi gépet így lassítva a PC-s alkalmazást. Ezzel szemben ha a folyamatok, amelyek ki lettek helyezve külső szerverekre erőforrás megtakarítási okokból, futnak lassan, akkor a központi gépnek kell ezek befejezését megvárnia.
  • az integrátoroknak egy hálózati hidat kell a központi számítógép hálózata és a PC hálózat közé telepíteni ha a két rendszer különböző protokollt használ. Ez az átjáró átalakítja a csomagokat a forrás hálózat protokolljáról a cél hálózatéra és továbbítja azokat a cél hálózatba.

Ezek a problémák nehézzé tették az integrációt. Mivel minden szituáció különbözik valamelyest ezért ekkora integráció szükséges minden alkalommal amikor két alkalmazást különböző platformokon össze akarunk kötni. Mivel ilyen nagy egy-egy rendszer integrációjának költsége ezért az IT részlegek többet foglalkoztak ezzel, mint magával az alrendszer kifejlesztésével. A fejlesztőknek olyan szoftverre volt szükségük, ami az alkalmazások között helyezkedik el, és kezeli az egyes rendszerek közti kommunikációt. Ennek a szoftvernek elég intelligensnek kellett lennie, hogy lekezelje a különböző platformok, programozási nyelvek, hálózati protokollok és hardverek közti különbségeket. El akarták rejteni ezeket a konverziókat, hogy csak az éppen fejlesztett alkalmazás funkcióival keljen foglalkozniuk. Az 1980-as évek végére olyan köztesrétegek kezdtek kialakulni, melyek ezzel a problémával foglalkoztak. A kezdeti köztes rétegek csak bizonyos platformokat, vagy programozási nyelveket támogattak, ezért kevésbé voltak hasznosak. Az idő előrehaladtával azonban egyre fejlettebbek lettek, és több platformot, nyelvet illetve protokollt kezdtek támogatni. A köztes rétegek azon képessége, hogy heterogén hálózatokban lévő különböző rendszereket képes összekapcsolni csak egy példa ennek a technológiának a hasznosságára. A napjainkban használatos köztes rétegek sok olyan új funkciót tartalmaznak, amelyekkel kibővítik az alkalmazást mellyel együttműködnek.

Előnyök

A fő ok az üzenet-orientált kommunikációs protokoll mellett, hogy képes raktározni (buffer), útválasztást alkalmazni vagy épp átalakítani az üzenetet amíg eljuttatja a küldőtől a fogadóig.

Szinkronizáció

A MOM tartalmaz egy alkalmazások közötti kommunikációs szoftvert, amely az aszinkron üzenettovábbításon alapul, nem pedig kérés-válasz kommunikáción. Az aszinkron rendszerben lévő üzenetsorok ideiglenes tárolóként működnek addig amíg a cél program elfoglalt vagy nincs csatlakozva. A legtöbb aszinkron MOM rendszer biztosít perzisztens tárat, amelyből visszaállíthatók ezek az üzenetsorok. Ez azt jelenti, hogy a küldőnek és a fogadónak nem szükséges egyszerre kapcsolódnia a hálózatra ezzel megoldva az időszakos kapcsolódással járó problémákat. Ebből az is következik, hogy a fogadó program esetleges hibája esetén a küldő tovább folytathatja a munkáját. A küldendő üzenetek felhalmozódnak az üzenetsorban esetleges későbbi feldolgozásra amikor a fogadó újraindul.

Útválasztás

Sok üzenet-orientált köztes réteg az üzenetsoroktól függ. Néhány implementáció az üzenet rétegre bízza az útvonalválasztás, míg mások a kliens alkalmazásra. Vannak azonban olyanok is, amelyek mindkét megközelítést használják. Vannak olyan megvalósítások amelyek a broadcast vagy multicast címzést használják.

Átalakítás

Az üzenet-orientált köztes rétegben a fogadó által kapott üzenetnek nem feltétlen kell megegyeznie a küldő által küldöttel. A MOM-ba épített intelligencia képes átalakítani az üzeneteket mind a küldő mind a fogadó igényeinek megfelelően.[2] Következésképpen az útválasztással és a broadcast/multicast funkciók segítségével egy alkalmazás képes kiküldeni egy üzenetet a saját natív formátumában és kettő vagy több alkalmazás pedig fogadja azt az általuk használt natív formátumban. Számos modern MOM rendszer kifinomult üzenettranszformáló eszközt tartalmaz amelyek segítségével a programozó képes megadni átalakítási szabályokat egyszerű fogd és vidd műveletekkel.

Hátrányok

A legfőbb hátránya az üzenet-orientált köztes rétegnek, hogy egy plusz komponensre van szüksége az architektúrába, az üzenettovábbító komponensre. Ahogy minden rendszernél, további komponens hozzáadása teljesítmény és megbízhatóságbeli csökkenést jelenthet, valamint bonyolultabb és drágább lehet a karbantartása. Ráadásul, számos alkalmazások közötti kommunikáció lényegében szinkron kommunikáció, melynél a küldő meg akarja várni a választ mielőtt folytatná a működést. Mivel az üzenet-orientált kommunikáció eredendően aszinkron ezért nem fog illeszkedni ilyen helyzetekben. Ennek köszönhetően a legtöbb MOM rendszerben vannak arra lehetőségek, hogy csoportosítsuk a kérést illetve választ egy pszeudoszinkron tranzakcióba.

A szabványok hiánya

A szabványok hiánya problémákhoz vezet az üzenet-orientált köztes réteg használatakor. Az összes nagyobb terjesztőnek megvan a saját implementációja, APIja illetve menedzsment eszközei. Van azonban remény, hogy végül szabvánnyá válik az aktívan fejlődő OpenMAMA. A Java EE tartalmazza JMS (Java Message Service) APIt, amely a legtöbb MOM terjesztő által implementálva van és megpróbálja elrejteni a részletes MOM API megvalósításokat, bár a JMS nem definiálja a formátumát az üzeneteknek, ennélfogva a JMS rendszerek nem átjárhatók. A Microsoft MSMQ-ja nem támogatja a JMS-t de vannak más által fejlesztett termékek hozzá amelyek kiegészítik ezzel a funkcióval. Az IBM WebSphere Message Brokere támogatja a JMS-t és még sok már modern funkciót is tartalmaz.

Advanced Message Queuing Protocol (AMQP) egy olyan szabvány amely meghatározza az üzenetküldő szerver és kliens formátumait és protokollját is, így ennek az implementációi átjárhatók. AMPQ rugalmas útválasztást biztosít, tartalmazza a népszerű üzenettovábbító paradigmákat mint a P2P, fanout, publish/subscribe és a kérés-válasz. Támogatja még a tranzakciókezelést, üzenetsor használatát, elosztottságot, biztonságkezelést, klaszterezést, összevonást és a heterogén platformok támogatását. Java alkalmazások melyek az AMQP-t használják általában Java JMS-t használva íródnak. Más implementációk biztosítanak API-kat C#, C++, PHP, Python, Ruby és más programozási nyelveknek.

Trendek

Az AMPQ-t egyre több alkalmazásba adoptálják, ahol átjárható protokollra van szükség üzenet-orientált köztes réteghez. Egyéb protokollok amelyek üzenet-orientált köztes réteghez vannak használva: XMPP és Streaming Text Oriented Messaging Protocol. Fejlesztés alatt lévő MOM protokollok:

  • RestMS viselkedésében hasonló az AMQP-hez de RESTful HTTP transzport fölé készült
  • SPB egy minimális üzenet keretező protokoll amely magas szintű MOM protokollok szállítására használható


Egy további trend, hogy hardverbe ültetik bele az üzenet-orientált köztes réteg funkcióit – többnyire FPGA vagy egyéb speciális chippekbe.[3]

Jegyzetek

  1. Curry, Edward. 2004. "Message-Oriented Middleware"[halott link]. In Middleware for Communications, ed. Qusay H Mahmoud, 1-28. Chichester, England: John Wiley and Sons. doi:10.1002/0470862084.ch1. ISBN 978-0-470-86206-3
  2. E. Curry, D. Chambers, and G. Lyons, “Extending Message-Oriented Middleware using Interception” Archiválva 2011. július 26-i dátummal a Wayback Machine-ben, presented at Third International Workshop on Distributed Event-Based Systems (DEBS '04), ICSE '04, Edinburgh, Scotland, UK, 2004.
  3. Are You Soft in the Middle? The future of enterprise IT rests in hardware applications. [2009. február 9-i dátummal az eredetiből archiválva]. (Hozzáférés: 2012. május 3.)

Fordítás

Ez a szócikk részben vagy egészben a Message-oriented middleware 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 és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Read other articles:

Benda Artocarpus elasticus Buah benda di pohonnya, di YogyakartaStatus konservasiRisiko rendahIUCN61220310 TaksonomiDivisiTracheophytaSubdivisiSpermatophytesKladAngiospermaeKladmesangiospermsKladeudicotsKladcore eudicotsKladSuperrosidaeKladrosidsKladfabidsOrdoRosalesFamiliMoraceaeTribusArtocarpeaeGenusArtocarpusSpesiesArtocarpus elasticus Blume, 1825 Tata namaSinonim taksonReferensi:[1] Artocarpus blumei Tree. A. kunstlen King. Ex taxon author (en)Reinw. EndemikPeringatan: Menampilkan...

 

 

العلاقات البوتانية الميكرونيسية بوتان ولايات ميكرونيسيا المتحدة   بوتان   ولايات ميكرونيسيا المتحدة تعديل مصدري - تعديل   العلاقات البوتانية الميكرونيسية هي العلاقات الثنائية التي تجمع بين بوتان وولايات ميكرونيسيا المتحدة.[1][2][3][4][5] مقا...

 

 

Cari artikel bahasa  Cari berdasarkan kode ISO 639 (Uji coba)  Kolom pencarian ini hanya didukung oleh beberapa antarmuka Halaman bahasa acak Bahasa Arab Yordania اللهجة الأردنية Dituturkan diYordaniaPenutur6,24 juta (2016)[1] Rumpun bahasaAfroasiatik SemitSemit TengahArabArab SyamArab Syam SelatanArab Yordania DialekFellahi (perdesaan) Madani (perkotaan) Sistem penulisanAbjad ArabKode bahasaISO 639-3Mencakup:avl – Syam Badawiajp –...

فرانسوا فيون (بالفرنسية: François Fillon)‏  نائب عن دائرة باريس الثانية الانتخابية تولى المنصب20 يونيو 2012 (11 سنةً و9 أشهرٍ و20 يومًا) تاريخ الانتخاب 17 يونيو 2012 جان تيبيري   وزير البيئة والتنمية المستديمة والنقل والإسكان الرئيس نيكولا ساركوزي الحكومة فيون الثالثة رئيس الوزراء �...

 

 

Сухопутні війська Казахстану Қазақстан Республикасының Құрлық әскерлеріQazaqstan Respublikasynyñ Qūrlyq äskerlerı Емблема Сухопутних військ КазахстануЗасновано 9 квітня 1993Країна  КазахстанВид Збройні силиТип сухопутні військаРоль ведення бойових дій переважно на суходоліЧисельн...

 

 

Yann IAdipati BretagneBerkuasa21 Oktober 1221 - 8 Oktober 1286PendahuluPêr I & AlisPenerusYann IIWaliPêr IComte RichmondBerkuasa1268PendahuluPierre II dari SavoiePenerusYann IIInformasi pribadiPemakamanBiara PrièresWangsaWangsa DreuxAyahPêr IIbuAlisPasanganBlanche dari NavarraAnakdi antara lainnyaYann IIPierre, Lord HadeAlix, Comtesse ChâtillonAgamaKatolik Roma Yann I si Merah (di dalam bahasa Breton Yann Iañ ar Ruz, di dalam bahasa Prancis Jean I le Roux) (1217 – 8 Oktober 1286),...

Pertempuran Mediterania, Timur Tengah dan Afrika Pada Perang Dunia IIPeta wilayah pertempuran Mediterania, Kekuatan Sekutu(Hijau Tua) dan Kekuatan Axis (oranye) di Mediterania. (Negara netral (abu-abu) dan Negara yang bergabung dengan Sekutu setelah perang (Hijau terang).)Tanggal10 Juni 1940 – 1 Mei 1945LokasiBalkan, Italia, Timur Tengah, Afrika Timur, Afrika Utara, Afrika BaratHasil Kemenangan SekutuPihak terlibat Kekuatan Sekutu: Inggris USA Yugoslavia - (sampai 1941) Uni Soviet Prancis E...

 

 

Dunning Mountain2016 Landsat image of Dunning MountainHighest pointElevation2,146 ft (654 m)[1]Coordinates40°14′44″N 78°26′46″W / 40.2456°N 78.4461°W / 40.2456; -78.4461GeographyLocationPennsylvania, U.S.Parent rangeAppalachian MountainsTopo mapUSGS New Enterprise (PA) Quadrangle and Roaring Spring (PA) Quadrangle Dunning Mountain is a stratigraphic ridge in central Pennsylvania, United States. The mountain's north end is at McKee Gap...

 

 

Cet article est une ébauche concernant le Concours Eurovision de la chanson et la Roumanie. Vous pouvez partager vos connaissances en l’améliorant (comment ?) ; pour plus d’indications, visitez le projet Eurovision. Roumanieau Concours Eurovision 2013 Données clés Pays  Roumanie Chanson It's My Life Interprète Cezar Langue Anglais Sélection nationale Type de sélection Finale nationale Date 9 mars 2013 Concours Eurovision de la chanson 2013 Position en demi-finale 5e...

Пензенская Духовная Семинария (ПДС) Международное название Penza Orthodox Theologiсal Seminary Год основания 1800 Конфессия Православие Церковь Русская православная церковь Ректор Серафим (Домнин), митрополит Пензенский и Нижнеломовский Расположение Пенза ул. Перекоп, д. 4 Сайт seminariapen...

 

 

List of Donald Duck cartoons redirects here. For a complete filmography of Donald Duck as a character, see Donald Duck filmography. American filmDonald DuckIntroductory title of the Donald Duck short films.ProductioncompaniesWalt Disney Productions (1-119)Walt Disney Animation Studios (120)Distributed byUnited Artists (1-2)RKO Radio Pictures (3-112, 114-118)Buena Vista Distribution (113, 119)[a]Walt Disney Animation Studios (120)CountryUnited StatesLanguageEnglish Donald Duck is a ser...

 

 

American politician Isham G. HarrisPhotograph of Harris by Mathew BradyPresident pro tempore of the United States SenateIn officeJanuary 10, 1895 – March 3, 1895Preceded byMatt W. RansomSucceeded byWilliam P. FryeIn officeMarch 22, 1893 – January 7, 1895Preceded byCharles F. MandersonSucceeded byMatt W. RansomUnited States Senatorfrom TennesseeIn officeMarch 4, 1877 – July 8, 1897Preceded byHenry CooperSucceeded byThomas B. Turley16th Governor of Tennessee...

RideSingel oleh Twenty One Pilotsdari album BlurryfaceDirilis16 April 2016[1]Direkam2014–2015Genre Alternative hip hop reggae dub rock electropop Durasi3:34LabelFueled by RamenPenciptaTyler JosephProduserRicky ReedKronologi singel Twenty One Pilots Lane Boy (2015) Ride (2016) Heathens (2016) Video musikRide di YouTube Ride adalah lagu yang ditulis dan direkam oleh duo musik asal Amerika Serikat, Twenty One Pilots, dari album studio keempat mereka, Blurryface. Ride awalnya dirilis se...

 

 

BMW M5InformasiProdusenBMW M GmbHMasa produksi1985–sekarangBodi & rangkaKelasMobil eksekutif mewah mid-sizeTata letakFR layoutMobil terkaitBMW Seri 5, BMW M6 BMW M5 adalah versi performa-tinggi dari BMW Seri 5 yang dibuat oleh divisi sport BMW, BMW M. Mobil ini diperkenalkan pertama kali pada tahun 1985, M5 generasi pertama dibuat dengan menggunakan sasis dari 535i dan mesin BMW M1 yang dimodifikasi. Mobil ini pun menjadi sedan tercepat di dunia ketika pertama kali diperkenalkan.[1&...

 

 

Toyota 200 dipersembahkan oleh CK PowerNASCAR Seri Truk Camping WorldTempatWorld Wide Technology Raceway at GatewayLokasiMadison, Illinois, U.S.Perusahaan sponsorToyota (sponsor judul) CK Power (sponsor yang hadir)Lomba pertama1998Jarak tempuh200 mil (321,869 km)Jumlah putaran160[1]Tahap 1/2: masing-masing 55 Tahap akhir: 50Nama sebelumnyaRam Tough 200 Presented by Pepsi (1998, 2001) Ram Tough 200 (1999) Ram Tough 200 by Pepsi (2000) Missouri-Illinois Dodge Dealers Ram Tough 200 ...

South Korean professional golfer The native form of this personal name is Park Inbee. This article uses Western name order when mentioning individuals. Inbee Park박인비Park at the 2013 Women's British OpenPersonal informationBorn (1988-07-12) 12 July 1988 (age 35)Seoul, South KoreaHeight5 ft 6 in (1.68 m)Sporting nationality South KoreaResidenceLas Vegas, Nevada, U.S.[1]Spouse Nam Ki-hyeop ​(m. 2014)​Children1CareerCollegeKw...

 

 

Current of the Pacific Ocean This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.Find sources: Humboldt Current – news · newspapers · books · scholar · JSTOR (September 2021) Humboldt Current The Humboldt Current, also called the Peru Current, is a cold, low-salinity ocean current that flows north along the western ...

 

 

Dutch computer scientist (born 1926) Willem Louis van der PoelWillem van der PoelBorn (1926-12-02) 2 December 1926 (age 97)The Hague, NetherlandsCitizenshipNetherlandsEducationDelft University of Technology (B.S. 1950)University of Amsterdam (Ph.D. 1956)Known forDesigning ZEBRA computerALGOL workAwardsComputer Pioneer Award (1984)Scientific careerFieldsComputer scienceInstitutionsDelft University of TechnologyThesis The Logical Principles of Some Simple Computers  (1956) Willem...

Haiti ai Giochi della XXIV OlimpiadeSeul 1988 Codice CIOHAI Comitato nazionaleComitato Olimpico Haitiano Atleti partecipanti4 in 2 discipline Di cui uomini/donne3 - 1 Medagliere Posizione - 0 0 0 0 Cronologia olimpica (sommario)Giochi olimpici estivi 1896 · 1900 · 1904 · 1908 · 1912 · 1920 · 1924 · 1928 · 1932 · 1936 · 1948 · 1952 · 1956 · 1960 · 1964 · 1968 · 1972 · 1976&#...

 

 

Congolese footballer Dieumerci Ndongala Ndongala with Genk in 2019Personal informationFull name Dieumerci NdongalaDate of birth (1991-06-14) 14 June 1991 (age 33)Place of birth Kinshasa, ZaireHeight 1.70 m (5 ft 7 in)Position(s) WingerTeam informationCurrent team APOELNumber 77Youth career0000–2011 Standard LiègeSenior career*Years Team Apps (Gls)2011–2013 Jeunesse Esch 33 (7)2013–2014 La Louvière 26 (9)2014–2016 Charleroi 74 (12)2016–2017 Gent 9 (0)2017–201...