Integrácia informačných systémov pomocou podnikovej servisnej zbernice (ESB)

Medzi osvedčené postupy pre integráciu komplexných informačných systémov patrí budovanie logických dátových trhov, ako aj vytváranie centralizovaných infraštruktúr výmeny dát pomocou systémov MDM a podnikových servisných zberníc (ESB, Enterprise Service Bus). Naše riešenia vrátane systému ArchiGraph.MDM sú vhodné na použitie ako súčasť operačného systému špeciálny účel Astra Linux Special Edition, ako aj Alt Linux.

Prečo je potrebná integračná zbernica?

Každá spoločnosť, ktorá používa viac ako dva softvérové ​​produkty, ktoré pracujú s prekrývajúcimi sa súbormi informácií, vie, aká je cena za nekomunikáciu medzi nimi. Nesynchronizované zoznamy zákazníkov alebo produktové rady a ďalšie informácie medzi ERP, CRM a inými podnikovými aplikáciami spôsobujú neustále straty času, zdrojov a reputácie spoločnosti. Jediným správnym riešením tohto problému je implementácia podnikovej servisnej zbernice (ESB) v spojení so systémom riadenia hlavných údajov (MDM).

Riešenia založené na pravidelnom nahrávaní a transformácii informácií (ETL), architektúre orientovanej na služby (SOA), poskytujú len dočasné riešenie takýchto problémov, majú mnohé nevýhody a obmedzujú rast IT infraštruktúry.

Implementácia integračnej zbernice

Pri zavádzaní integračnej zbernice vyvstáva úloha zmapovať (porovnať) štruktúru informácií o rovnakých objektoch prítomných v rôznych informačných systémoch. Tento problém je potrebné vyriešiť vytvorením spoločného, ​​neutrálneho vo vzťahu ku každej aplikácii, informačný model. Takýto model možno najefektívnejšie implementovať pomocou sémantických technológií. Pre optimálne výsledky implementácie je na vývoj modelu potrebný profesionálny dátový architekt.

Dôležitou súčasťou implementačného projektu je implementácia konektorov (programovacích rozhraní) pre všetky aplikácie zapojené do výmeny dát. Naši špecialisti majú skúsenosti s vývojom a spájaním konektorov pre širokú škálu softvéru na rôznych platformách.

Spolu s partnermi realizujeme integračné projekty založené na riešeniach IBM WebSphere MQ, Integration Service Bus, WSO2 Message Broker, Apache Synapse a Business Semantics.

Projekt na implementáciu integračnej zbernice sa často vykonáva ako súčasť všeobecného reinžinieringu podnikovej informačnej architektúry.

2005

Enterprise Service Bus – „rozpočtový“ prístup k riešeniu integračných problémov

Spracoval: na základe materiálov zo zahraničných stránok
Preklad: Intersoft Lab

Pokračovaním v oboznamovaní čitateľa s rôznymi prístupmi k integrácii sme sa rozhodli zamerať na relatívne novú a veľmi atraktívnu technológiu – podnikový servisný autobus (Enterprise Service Bus, skratka ESB).

Čo je podniková servisná zbernica a ako sa porovnáva s integráciou podnikových aplikácií (EAI), o ktorej sa hovorilo v predchádzajúcich vydaniach časopisu DWH, OLAP a XML Connoisseurs Club Magazine? Podľa zavedenej tradície dáme slovo najskôr odborníkom v tejto oblasti.

Analytici spoločnosti Gartner definujú ESB ako nový typ middlewaru, ktorý sa integruje funkčnosť iní už existujúce typy stredná podpora. Enterprise Service Bus podporuje webové služby implementáciou protokolu SOAP (Simple Object Access Protocol) a použitím špecifikácie Web Services Description Language (WSDL) a Universal Description, Discovery and Integration (UDDI).Univerzálny popis, detekcia a integrácia). Mnoho podnikových servisných zberníc podporuje aj iné komunikačné štýly, vrátane garantovaného doručenia a publikovania a predplatenia. Služby poskytované týmito zbernicami poskytujú „pridanú hodnotu“, ktorú ľahký middleware na zasielanie správ nemá – poskytujú kontrolu správ, transformáciu, smerovanie založené na obsahu, bezpečnosť, zisťovanie služieb pre architektúru orientovanú na služby, vyrovnávanie záťaže a registráciu. Niektoré služby sú zabudované do zbernicovej základne, iné bežia v zásuvných moduloch. Okrem toho zbernice podporujú XML a ďalšie formáty správ.

Prečo je podnikový autobus taký atraktívny? Po prvé, jeho relatívna lacnosť. Produkty ESB sú vo všeobecnosti umiestnené ako cenovo dostupné, alebo ako sa hovorí, „rozpočtové“ riešenia.

V súčasnosti skutočne rastie dopyt po integračných technológiách. A kým skôr bolo nasadenie produktov EAI spojené s dosahovaním strategických cieľov, a teda sa z dlhodobého hľadiska vyplácalo, úlohy, ktoré v r. tento moment spoločnosti, ktorým musia čeliť, sú vo svojej podstate taktické a vyžadujú si nové prístupy. „Moderná obchodná realita“ upriamila pozornosť na oblasti, kde boli predajcovia EAI tradične slabí – transformácia, programovanie zamerané na vývojárov (napríklad Java) a integrácia s externými technológiami. To všetko „pripravilo úrodnú pôdu“ pre vznik novej kategórie produktov – ESB.

Keď už hovoríme o výhodách podnikového servisného autobusu, stojí za to citovať slová Roya Schulteho, viceprezidenta a člena výskumného oddelenia spoločnosti Gartner: „Zvyčajné softvér stredná vrstva už nemôže podporovať nové aplikácie, ktoré využívajú architektúru orientovanú na služby (Service Oriented Architecture, skratka SOA) a architektúru riadenú udalosťami (Event Driven Architecture, skratka EDA), webové služby a riadenie podnikových procesov. To je hlavný dôvod, prečo architekti a manažéri informačných systémov potrebujú využiť svoje podnikové informačné infraštruktúry s ESB.

Vedúci analytik spoločnosti Gartner vyzdvihuje skupiny predajcov ESB. Odkazuje na prvú skupinu produktov ESB, ktoré sú umiestnené ako „rozpočtové“ integračné riešenia, ktoré sú najvhodnejšie na podporu kompozitných aplikácií a SOA. Druhou skupinou sú produkty určené pre trh webových služieb a nakoniec sú to posledné softvér, poskytovanie podpory EDA. Podľa Roya Schulteho sa trh ESB v priebehu nasledujúcich rokov zhustí, čo bude poháňané rastúcim dopytom po webových službách a multiprotokolových a udalosťami riadených riešeniach.

Je zaujímavé, že v mnohých spoločnostiach sa ESB nepovažuje za kategóriu produktov, ale za architektúru. Napríklad v IBM sa zbernica podnikových služieb považuje za „architektonický vzor“.

Dá sa teda konštatovať, že stále neexistuje jasná definícia toho, čo ESB je. V skutočnosti sa diskusia točí okolo dvoch otázok:

  1. Je ESB architektúra (a taká, ktorá ani nemusí byť štandardizovaná), „jednostranný prístup“ alebo samostatný produkt.

    Aj keď je pre mnohých predajcov, ktorí v súčasnosti nemajú hotové riešenia, prospešné hovoriť o Enterprise Service Bus ako architektúre, súčasná situácia je taká, že zákazníci potrebujú, aby ich produkty ponúkali funkčnosť ESB. Preto by sme mali v priebehu nasledujúcich dvoch rokov očakávať nárast počtu predajcov ponúkajúcich možnosti ESB.

  2. Aké je miesto a budúcnosť produktov ESB, konkrétne je podniková servisná zbernica, pokročilejší systém radenia správ, ktorý poskytuje jednoduchú transformáciu XML, ako aj smerovanie a posielanie správ, alebo umožní použitie aplikačných adaptérov, automatizácie a modelovania obchodných procesov ESB úspešne nahradiť EAI.

V súčasnosti neexistujú žiadne definitívne odpovede na tieto otázky.

Je však potrebné zdôrazniť, že aj keď nie je jasné, čo sa týka zbernice Enterprise Service Bus, je zrejmé, že otvorený štandardný prístup ESB môže výrazne znížiť náklady na akvizíciu a implementáciu.

Všimnite si, že slovo „služba“ v pojme „firemný servisný autobus“ je ústredné. Analytici Forrester Research teda považujú ESB za „vrstvu midlvéru, s ktorou môžete pristupovať k súboru základných (opakovane použiteľných) obchodných služieb.“ SOA umožňuje odhaliť väčšinu funkcií ako „službu“ v podnikovej servisnej zbernici, ktorá preposiela, transformuje a overuje vstupné a výstupné údaje do XML formát z týchto služieb.

ESB a XML

Bolo by nespravodlivé, keby sme nezdôraznili špeciálnu úlohu XML – XML ​​je základom integrácie. Ak niekto pripustí, že XML je viac „abeceda“ než len jazyk, je jasné, že úplná integrácia si vyžaduje organizáciu obchodných procesov, riadenie transformácie XML a overovanie a posielanie správ XML v rámci organizácie. Všetky tieto funkcie tvoria základ Enterprise Service Bus.

XML môže poskytnúť komplexnú reprezentáciu množiny údajov. Obľúbenosť tohto jazyka možno pripísať jeho vysokej flexibilite a rozšíriteľnosti. Syntax XML vám skutočne umožňuje modernizovať a rozvíjať špecializované schémy XML na spracovanie rôznych údajov.

Rýchly rast objemu prenášaných dát zároveň spôsobuje vážne ťažkosti pre fungovanie podnikovej informačnej štruktúry. Takže prvé integračné projekty, ktoré využívali možnosti XML, boli „živým“ dôkazom prísľubu tohto jazyka, no v súčasnosti existujú určité problémy s nárastom počtu, veľkosti a zložitosti dokumentov XML. Nasledujú hlavné dôvody existujúcich ťažkostí (nedostatočná škálovateľnosť):

  • Analýza celého dokumentu: Zvyčajne chcete analyzovať celé dokumenty, aj keď na smerovanie a filtrovanie je potrebné extrahovať iba časť z nich. Ak sa dokumenty zväčšia, čakacia doba sa predĺži.
  • Znova naskenovať. Dokumenty sa často znovu analyzujú – v každej fáze obchodného procesu, inými slovami, tie isté dokumenty môžu byť naskenované niekoľkokrát. Keďže tento postup je mimoriadne náročný na zdroje, znižuje sa výkon a priepustnosť.
  • Jednovláknové prevedenie. V tomto prípade nie je možné spustiť ďalší krok spracovania, kým sa nedokončí aktuálny; v dôsledku toho sa latencia zvyšuje, pretože celý proces závisí od najpomalšieho kroku.

Na prekonanie nedostatočnej škálovateľnosti sa odporúča použiť architektúru spracovania, ktorá podporuje nasledujúce funkcie:

  • Streamovanie dokumentov – Zabezpečuje spracovanie XML dokumentov pri príchode každého prvku, t.j. zabezpečuje nízku latenciu. Tento prístup umožňuje spracovávať veľké správy rovnako produktívne ako malé.
  • Selektívne spracovanie, ktoré dosahuje veľmi výrazné zlepšenie výkonu spracovaním iba relevantných fragmentov namiesto celého dokumentu XML.
  • Viacvláknové spracovanie, pri ktorom procesor riadi zoraďovanie sekvenčných krokov na kanáli, paralelné vykonávanie jednotlivých krokov a vyrovnávanie záťaže identických krokov pri spracovaní viacerých fragmentov XML.
  • Jediný sken, pri ktorom sa namiesto niekoľkých opakovaných čítaní štruktúry toho istého dokumentu od samého začiatku extrahujú všetky potrebné fragmenty v jednom prenose.

Vyššie uvedené funkcie je možné implementovať pomocou Enterprise Service Bus – a bez špeciálneho kódovania a konfigurácie.

Aký je rozdiel medzi zbernicou podnikových služieb (ESB) a sprostredkovateľmi správ (ako RabbitMQ)?

V dôsledku toho je možné vyriešiť problém neuspokojivého výkonu.

Záver

Súdiac podľa publikácií v zahraničných internetových publikáciách a odhadov analytikov z popredných výskumných spoločností, podniková servisná zbernica už nie je len Nová technológia s veľkým potenciálom. Gartner totiž predpovedá, že v roku 2005 bude väčšina veľkých spoločností využívať ESB. IDC verí, že podnikový servisný autobus by mal „revolúciu“ Informačné technológie a umožňujú flexibilné a škálovateľné distribuované spracovanie.

Podpora otvorených štandardov (a najmä XML) totiž poskytuje lacné, no efektívne riešenie a zaručuje rýchlu návratnosť investície, t.j. vysoká miera ROI. Ako poznamenáva Steve Craggs, viceprezident Integration Consortium, „ESB je základom pre integráciu, poskytuje flexibilné a prispôsobiteľné prostredie, ktoré umožňuje plodnú, úspešnú a systematickú implementáciu integračných projektov.“

Neistota s nejednoznačnosťou pojmu „firemný autobus“ však stále pretrváva. ESB dnes znamená akúkoľvek technológiu potrebnú na implementáciu SOA. Presne takýto názor zastáva ZapThink, spoločnosť špecializujúca sa na vývoj a aplikáciu architektúry orientovanej na služby. V tejto súvislosti analytici ZapThink varujú, že pokiaľ sa v roku 2005 nevypracuje skutočná a konkrétna definícia podnikovej servisnej zbernice, termín ESB „navždy opustí lexikón SOA“. Čo sa týka samotnej SOA, o nej bude reč v ďalšom článku.

Publikácie

  1. Je Beth Gold-Bernstein ESB kritický pre vašu budúcnosť?
  2. Nigel Thomas a Warren Buckley Rise z ESB.
  3. Materiály zverejnené na webovej stránke Integračného konzorcia.

Čo je ESB a SOA¶

Vynikajúci popis systémového myslenia
Nick Coghlan, hlavný vývojár Pythonu

dostupné aj v Catala, Deutsch, Angličtina, Francais, Italiano, Nederlands, Portugalci, turecký a 中文 .

Skratka ESB as ňou spojená SOA môže byť zdrojom nejasností. ESB je skratka pre Enterprise Service Bus. SOA - Service Oriented Architecture.

Tieto názvy znamenajú málo, takže nasledujúce je viac úplné informácie v jednoduchom jazyku, bez nadmernej firemnej slovnej zásoby.

Celá pravda¶

Predstavme si, čo sa stane, keď sa prihlásite do klientskej aplikácie svojej banky:

  1. Zobrazí sa vaše meno
  2. Zobrazí sa zostatok na vašom účte
  3. Zobrazujú sa vaše kreditné a debetné karty
  4. Môže tam byť zoznam vašich podielových fondov
  5. Dostanete tiež zoznam vopred vypočítaných pôžičiek, ktoré by vás mohli zaujímať

S vysokou mierou pravdepodobnosti môžeme povedať, že všetky tieto informácie patria rôznych systémov a aplikácie, z ktorých každá poskytuje údaje cez nejaké rozhranie (HTTP, JSON, AMQP, XML, SOAP, FTP, CSV alebo akékoľvek iné):

  1. z CRM so systémom Linux a Oracle
  2. zo systému COBOL bežiaceho na sálovom počítači z/OS
  3. hovoria, že tieto informácie pochádzajú zo systému mainframe, ale títo chlapci sú príliš ticho na to, aby povedali niečo iné, než že uprednostňujú CSV pred všetkým ostatným
  4. zo zmesi PHP a Ruby bežiacich na Windows
  5. z PostgreSQL, Python a Java bežiacich na Linuxe a Solarise

Otázkou je, ako môžete prinútiť aplikáciu frontend komunikovať so systémami 1-5? No v žiadnom prípade.

Je to nevyhnutné na zabezpečenie toho, aby sa takéto prostredia mohli rozšíriť za hranice viacerých systémov. Nenútite ich, aby spolu priamo komunikovali.

V nižšie uvedenom diagrame je každé volanie na službu poskytovanú iným systémom znázornené čiarou s rôznou hrúbkou a štýlom:

Všimnite si, že sme ani neukázali žiadne procesy na vysokej úrovni (App1 volá App2 a buď App3 alebo App5 v závislosti od toho, či bola predchádzajúca odpoveď z App6 úspešná, takže App4 môže neskôr prevziať údaje, ktoré vygenerovala App2, ale iba ak App1 nezakazuje a pod.).

Všimnite si tiež, že nehovoríme o serveroch - každý zo systémov môže bežať na 10 fyzických serveroch, takže spolu bude komunikovať minimálne 60 fyzických komponentov.

Niektoré problémy sa však stanú zjavnými.

Ako oddeliť rozhrania? Ako naplánovať sťahovanie? Ako koordinujete aktualizácie alebo plánované odstávky, keď každú aplikáciu spravujú rôzne vývojové tímy, predajcovia alebo oddelenia a polovica pôvodných vývojárov už zo spoločnosti odišla?

Ak si myslíte, že môžete spravovať 6 aplikácií, čo tak 30?

Zvládnete 400? A od roku 2000? Každá aplikácia môže predstavovať svoj vlastný jedinečný ekosystém, ktorý vyžaduje na spustenie tucet serverov alebo iných zariadení, takže to je 20 000 pohyblivých častí rozmiestnených po kontinentoch so všetkými druhmi technických a kultúrnych hraníc. A všetky tieto časti si neustále a nepretržite chcú vymieňať správy po celú dobu bez akýchkoľvek prestojov. (Ušetríme vás schémy.)

Pre túto situáciu existuje skvelý názov – neporiadok.

Ako môžete napraviť situáciu?¶

Prvým krokom je uvedomiť si, že situácia je mimo kontroly. To vám umožňuje hľadať riešenie bez pocitu silného pocitu viny. No stalo sa, nevedeli ste to urobiť lepšie, ale je tu šanca, že sa to všetko dá napraviť.

To môže priniesť organizačné zmeny v spôsobe, akým pristupujeme k IT, no ďalším krokom je pripomenúť si, že systémy a aplikácie nie sú len o zdieľaní údajov. Sú navrhnuté tak, aby podporovali obchodné procesy bez ohľadu na podnikanie samotné, či už ide o bankovníctvo, zvukové nahrávky, radarové zariadenia, čokoľvek.

Keď si tieto dva body jasne zadefinujete, môžete začať navrhovať alebo prerábať svoje systémy okolo služieb.

Služba je niečo zaujímavé, opakovane použiteľné a atomické, čo poskytuje jeden systém iným aplikáciám, ktoré ju chcú používať, ale služba nie je nikdy priamo vystavená jedna k jednej. Toto je najkratší a najzmysluplnejší popis zo všetkých možných.

Ak daná funkčnosť systému spĺňa tieto tri požiadavky:

  • ja zaujímavý (zaujímavý)
  • R eusable (opakovane použiteľné)
  • A tomický (atómový)

potom je veľká šanca, že systém môže a mal by byť vystavený iným systémom ako služba, ale nikdy nie priamo pripojený.

Poďme diskutovať o prístupe IRA na niekoľkých príkladoch.

Variabilné Poznámky
Životné prostredie CRM systém elektrickej spoločnosti
Funkčnosť Vrátiť zoznam zákazníkov, ktorí boli aktívni na samoobslužnom portáli v 3. štvrťroku 2012
Je to zaujímavé? Áno, dosť zaujímavé. Toto možno použiť na generovanie všetkých druhov užitočných správ a štatistík.
Je to možné Nie, nie tak veľmi. Aj keď vám to umožňuje vytvárať
opakovane konštrukcie na vysokej úrovni, ako sú štatistiky za celý rok,
použiť? je jasné, že to v roku 2018 nebudeme potrebovať.
Je to atómové? Pravdepodobne áno.

Ak už podobné služby existujú pre iné štvrťroky, môžete si pozrieť celý rok.

Ako z toho urobiť IRA?
  • Vynútiť príjem ľubovoľných dátumov začiatku a konca obdobia namiesto zadávania iba štvrťroka.
  • Vynútiť prijímanie ľubovoľných aplikácií, nielen portálu. Poskytnite možnosť špecifikovať aplikáciu na prijímanie informácií ako vstupný parameter.
Variabilné Poznámky
Životné prostredie stránky elektronického obchodu
Funkčnosť Vráti všetky informácie, ktoré boli kedy zhromaždené pre zadaného používateľa
Je to zaujímavé? Vo všeobecnosti áno. Ak máte prístup k celku, vždy si môžete vybrať, čo potrebujete.
Je to možné Napodiv, v skutočnosti nie. Bude ich len pár
opakovane prihlášky, ak nejaké budú, kto bude mať záujem
použiť? využiť úplne každú informáciu.
Je to atómové? Určite nie. Toto monštrum funkčnosti je predurčené na to, aby sa logicky skladalo z desiatok menších častí.
Ako z toho urobiť IRA?
  • Rozdeľte na niekoľko menších častí. Zamyslite sa nad tým, čo kupujúceho vystihuje – má adresy, telefónne čísla, obľúbené produkty, preferované spôsoby, ako ho kontaktovať a podobne. Každá z týchto položiek by sa mala zmeniť na nezávislú službu.
  • Pomocou ESB vytvorte kompozitné služby z atómových.
Variabilné Poznámky
Životné prostredie Akýkoľvek CRM systém, kdekoľvek
Funkčnosť Po vytvorení účtu aktualizujte stĺpec CUST_AR_ZN v tabuľke C_NAZ_AJ
Je to zaujímavé? Absolútne nezaujímavé. Ide o internú funkciu CRM systému. Nikto so zdravým rozumom sa nechce zaoberať takouto funkcionalitou nízkej úrovne.
Je to možné Áno, pravdepodobne. účtu možno vytvoriť cez
opakovane viac kanálov, takže sa zdá, že ide o niečo viac
použiť? použité.
Je to atómové? Zdá sa, že áno. Ide o jednoduchú aktualizáciu jedného stĺpca v tabuľke.
Ako sa vysporiadať
táto IRA? Ani sa nesnažte z toho robiť službu. Nie je to zaujímavé. Nikto nechce myslieť na konkrétne stĺpce a tabuľky v jednom systéme. Toto je zložitá časť CRM systému a aj keď je znovu použiteľná a atomická, neoplatí sa z nej budovať službu. Je to vaše a CRM, je vašou zodpovednosťou na to myslieť, nenúťte to znášať aj ostatných
Variabilné Poznámky
Životné prostredie Mobilný operátor
Funkčnosť Doplnenie predplatenej komunikačnej karty pri účtovaní
Je to zaujímavé? Mimoriadne. Každý to chce používať prostredníctvom textových správ, IVR, IM, portálov, darčekové poukážky atď.
Je to možné Áno. Môže sa zúčastniť mnohých na vysokej úrovni
opakovane procesy.
použiť?
Je to atómové? Áno, z pohľadu aplikácie na volanie je možné kartu dobiť alebo nie. Skutočnosť, že fakturácia to implementuje prostredníctvom série krokov, nie je dôležitá. Z obchodného hľadiska je to atomické, ide o nedeliteľnú službu poskytovanú účtovaním.
Ako sa vysporiadať Už je to IRA.
táto IRA?

Ak ste za posledných 50 rokov čo i len trochu programovali, bude vám zrejmé, že poskytovanie služby je ako poskytovanie API v jednom kuse kódu pre druhý. Jediný rozdiel je v tom, že sa nezaoberáte submodulmi jedného systému, ale pracujete na úrovni celého prostredia jednotlivých systémov.

Dostupnosť služieb v ESB a SOA¶

Teraz, keď už viete, že systémy nekomunikujú priamo a rozumiete, čo je služba, môžete začať ESB efektívne využívať.

Teraz je úlohou ESB poskytovať a využívať integrované systémové služby. Vo väčšine prípadov teda musí byť medzi každým systémom a ESB definovaná iba jedna prístupová metóda, jedno rozhranie.

Ak teda, ako na obrázku vyššie, máte 8 systémov - potom máte 16 rozhraní (jedno v každom smere) na vytváranie, údržbu, správu a poskytovanie.

Bez ESB by ste mali 56 rozhraní na vytváranie a správu (za predpokladu, že každý systém spolu hovorí).

Žiadnych ďalších 40 rozhraní znamená menej strateného času a viac ušetrených peňazí. Aj preto budú vaše piatky menej stresujúce.

Už len táto skutočnosť by vás mala podnietiť, aby ste zvážili implementáciu ESB.

Ak bude jeden zo systémov prepísaný, prevedený na iného vlastníka, rozdelený medzi oddelenia alebo predajcov, potom bude úlohou chlapov z ESB urobiť príslušné zmeny. Žiadny z ostatných systémov si to ani nevšimne, pretože ich rozhranie s ESB zostane nedotknuté.

Keď začnete pravidelne dýchať služby IRA, môžete začať uvažovať o zložených službách.

Pamätáte si vyššie uvedenú službu „dajte mi-čokoľvek-môžete-urobiť-o-tomto-klientovi“?

Vytvoriť si ho nebol dobrý nápad, no občas narazíte na klientske aplikácie, ktoré potrebujú agregovať informácie. Chlapci z ESB to budú mať na starosti a ich úlohou bude vybrať najlepšie atómové služby na zostavenie zloženej služby pre konkrétny klientsky systém vyžadujúci konkrétny súbor kompozitných údajov.

Postupom času si celá organizácia začne uvedomovať, že už nejde o databázové tabuľky, súbory, balíky, funkcie, podprogramy či záznamy. Teraz hovoríme o architektúre sústredenej okolo zaujímavých, opakovane použiteľných a atómových služieb poskytovaných aplikáciami ESB.

Ľudia si už nebudú myslieť, že aplikácie a systémy si navzájom posielajú správy. ESB budú vnímať ako komplexnú bránu k zaujímavým službám, ktoré môžu využívať ich vlastné systémy. A ani nebudú kontrolovať, kto čo poskytuje, ich systémy sa budú zaoberať len ESB.

Bude to vyžadovať čas, trpezlivosť a koordinované úsilie, ale dá sa to.

Ale pozor...¶

Väčšina Najlepšia cesta zničiť celý koncept SOA - nasadiť ESB a očakávať, že sa problémy vyriešia samé. Aj keď je to skvelý nápad, len nasadenie ESB bohužiaľ nebude stačiť.

V najlepšom prípade pokus skryť niečo pod koberec, ako na obrázku nižšie, nepovedie k ničomu:

Vaši ITčkári budú tento systém nenávidieť, a hoci manažéri budú ESB spočiatku tolerovať ako nové riešenie, nakoniec sa stane terčom smiechu. „Čo, je to tá istá nová strieborná guľka? Hahaha.”

Takéto dôsledky sú nevyhnutné, ak ESB nie je súčasťou väčšieho plánu rozvoja.

Je teda ESB len pre banky a podobne?¶

Vôbec nie. to dobré rozhodnutie v každej situácii, ktorá si na dosiahnutie zaujímavého výsledku vyžaduje koordinovanú prácu viacerých zdrojov údajov a viacerých prístupových metód.

Napríklad úloha zhromažďovania najnovších údajov o teplote a ich publikovania na viacerých kanáloch, ako sú e-mailové upozornenia a aplikácie pre iPhone, je vhodná pre integračnú platformu.

Periodická kontrola a monitorovanie prevádzky všetkých inštancií kritickej aplikácie, a ak nie sú všetky spustené, je tiež skvelé spustiť nakonfigurovaný skript a poslať textovú správu správcom.

Čokoľvek, čo je potrebné integrovať do jasného, ​​dobre definovaného prostredia, je pravdepodobne vhodné pre službu ESB. Ale ako vždy, rozhodnutie, či je niečo naozaj vhodné na integráciu, prichádza so skúsenosťami.

firemný servisný autobus

Samozrejme, tím Zato môže pomôcť.

Ale počul som, že SOA je XML, SOAP a webové služby¶

Áno, niektorí ľudia by chceli, aby ste tomu verili.

Ak ľudia alebo predajcovia, s ktorými ste spolupracovali, poslali súbor CSV s kódovaním BASE64 v správe SOAP chránenej SAML2, potom je pochopiteľné, prečo ste nadobudli taký dojem.

XML, SOAP a webové služby majú svoje prípady použitia, ale ako všetko ostatné, aj tieto sa dajú zneužiť.

SOA je o zrozumiteľnej a spravovateľnej architektúre. To, či služba môže alebo nemusí používať SOAP, je prakticky irelevantné. SOA ako architektonický prístup bude stále platný, aj keď sa nepoužíva žiadna služba SOAP.

Ak architekt navrhne peknú stavbu, nemôže príliš ovplyvniť farebnosť interiéru.

Takže nie, SOA nie je XML, SOAP a webové služby. Dajú sa použiť, ale sú len súčasťou, nie základom.

Stratených kolegov môžete odkázať na tento článok, aby pochopili, čo je SOA.

Ďalšie viac¶

Táto kapitola pokrýva len úplné základy, no napriek tomu by mala poskytnúť solídne pochopenie toho, ako by ESB a SOA mali vyzerať a čo je potrebné na dosiahnutie úspechu.

Medzi ďalšie témy, ktoré tu nie sú zahrnuté, patria (ale nie sú obmedzené na):

  • Ako získať podporu od manažérov na predstavenie ESB
  • Ako zostaviť tímy architektov SOA a analytikov
  • Reprezentácia Canonical Data Model (CDM) v organizácii
  • Kľúčové ukazovatele výkonnosti (KPI) – teraz, keď máte spoločnú a jednotnú metódu poskytovania služieb medzi systémami, mali by ste začať pozorovať a analyzovať, čo sa vám v skutočnosti poskytuje
  • Business Process Management (BPM) – ako a kedy zvoliť BPM platformu pre správu služieb (odpoveď nie je príliš skoro, najprv sa naučte budovať pekné a užitočné služby)
  • Čo robiť so systémami bez API? Napríklad, ak by ESB získal priamy prístup k svojim databázam (odpoveď je iná, neexistuje žiadne zlaté pravidlo)

Čo je teda Zato?¶

Zato je ESB a aplikačný server napísaný v Pythone a možno ho použiť na zostavenie middleware a backend systémov. Tento softvér je otvorený zdrojový kód s komerčnou a komunitnou podporou. A Python je programovací jazyk známy svojou jednoduchosťou a efektívnosťou.

Používanie Pythonu a Zato vám umožní zvýšiť produktivitu a stratiť menej času.

Zato bolo napísané pragmatici pre pragmatikov. Toto nie je ďalší narýchlo vybudovaný systém od predajcu po hype ESB/SOA.

V skutočnosti bol Zato postavený z praktických skúseností s „hasením požiarov“ spôsobených takýmito systémami. Vskutku, autori Zato strávili bojom s takýmito prostrediami toľko času, že sa stali prakticky imúnnymi voči akýmkoľvek požiarom.

Toto je kováčska dielňa, z ktorej prišiel na svet Zato, a preto môže ponúknuť výkon a jednoduchosť použitia, ktorú iné podobné riešenia nenachádzajú.

Vidíme sa na tu!

(Enterprise Service Bus) je navrhnutý na vybudovanie distribuovaného informačného prostredia podniku. softvér zabezpečuje interakciu všetkých integrovaných aplikácií v jednom centre, pričom kombinuje existujúce zdroje informácií a poskytuje centralizovanú výmenu údajov medzi rôznymi informačné systémy.

Enterprise Service Data Bus DATAREON ESB je efektívnym prostriedkom na zabezpečenie stability a úplnosti výmeny informácií, zvýšenie celkovej výkonnosti informačného systému a zníženie mzdových nákladov na jeho správu.

Enterprise Service Bus

softvér DATAREON ESB oficiálne zaradené do jednotného registra ruských programov pre elektroniku počítačov a databázy, ktoré si môžu zakúpiť štátne a mestské inštitúcie (https://reestr.minsvyaz.ru/).

Pre integráciu 2-3 informačných systémov v malých firmách ponúka DATAREON softvérový produkt založený na DATAREON ESB - DATAREON MQ.

Funkčnosť DATAREON ESB

Úlohy riešené pomocou podnikovej servisnej dátovej zbernice

  • Prenos dát medzi rôznymi informačnými systémami (smerované alebo point-to-point)
  • Vytvorenie jednotného informačného priestoru v heterogénnych prostrediach
  • Budovanie distribuovaného systému založeného na modeli udalostí v nasledujúcich možnostiach:
    • vytváranie aplikácií s komplexnými obchodnými procesmi založenými na modeli udalostí;
    • vytvorenie systému so synchronizáciou podnikových aplikácií v rôznych informačných systémoch
  • Potvrdenie škálovateľná architektúra riadeniaúroveň podniku/holdingu
  • Nasadenie systémy na výmenu údajov na transportnej vrstve a na úrovni obchodnej logiky
  • Delegovanie úlohy budovania informačných tokov analytické oddelenia
  • Zníženie celkovej zložitosti integračnej schémy a zníženie požiadavky na šírku pásma kanálov
  • Zvýšenie celkovej stability vrstva prenosu dát
  • Znížené transakčné náklady pri výmene údajov medzi rôznymi oddeleniami
  • Znížené celkové nákladyúdržba a podpora informačného systému.

Výhody zbernice DATAREON ESB Enterprise Service Bus

  • Rýchla integrácia
  • Vysoká spoľahlivosť
  • Schopnosť znovu použiť zdroje

), predtým známy ako Axelot Datareon ESB, je navrhnutý na vybudovanie distribuovaného podnikového informačného prostredia. Softvérový produkt zabezpečuje interakciu všetkých integrovaných aplikácií v jednom centre, kombinuje existujúce zdroje informácií a zabezpečuje centralizovanú výmenu dát medzi rôznymi informačnými systémami.

Datareon ESB Enterprise Data Service Bus je prostriedkom na zabezpečenie stability a úplnosti výmeny informácií, zvýšenie celkovej výkonnosti informačného systému a zníženie mzdových nákladov na jeho správu.

Softvérový produkt Datareon ESB je oficiálne zaradený do jednotného registra ruských programov pre elektronické počítače a databázy, ktoré si môžu zakúpiť štátne a mestské inštitúcie.

Funkčnosť

  • Podpora rôznych štandardov a integračných scenárov
  • Centralizované riadenie integračnej krajiny s ekosystémom Eclipse
  • Transformácia dát (viackrokové algoritmy transformácie dát s riadením rôznych podmienok)
  • Prenos dát ľubovoľnej veľkosti (vertikálne a horizontálne škálovanie)
  • Jednoduchá integrácia s produktmi založenými na platforme 1C:Enterprise 8
  • Zabezpečenie bezpečného prenosu dát
  • Diagnostika a sledovanie stavu celej dátovej siete

Úlohy, ktoré treba vyriešiť

  • Prenos dát medzi rôznymi informačnými systémami (so smerovaním alebo point-to-point)
  • Formovanie jedného informačného priestoru v heterogénnych prostrediach
  • Vytvorenie distribuovaného systému založeného na modeli udalostí v nasledujúcich možnostiach:
    • vytváranie aplikácií s komplexnými obchodnými procesmi založenými na modeli udalostí;
    • vytvorenie systému so synchronizáciou podnikových aplikácií v rôznych informačných systémoch
  • Získanie škálovateľnej architektúry riadenia na úrovni podniku / holdingu
  • Nasadenie systému výmeny údajov na úrovni transportu a na úrovni obchodnej logiky
  • Delegovanie úlohy budovania informačných tokov na analytické oddelenia
  • Zníženie celkovej zložitosti integračnej schémy a zníženie požiadavky na šírku pásma kanálov
  • Zvýšenie celkovej stability vrstvy prenosu údajov
  • Zníženie transakčných nákladov pri výmene údajov medzi rôznymi oddeleniami

2017

Axelot Datareon ESB 2.1.0.0

Riešenie AXELOT Datareon ESB bolo zaradené do zoznamu kompetencií Gold Application Development, čo potvrdzuje vysokú kvalitu produktu a jeho kompatibilitu s produktmi spoločnosti Microsoft.

AXELOT Datareon ESB poskytuje firmám množstvo kľúčových výhod:

  • Možnosť integrácie;
  • Spoľahlivosť a znovupoužiteľnosť zdrojov;
  • Získanie škálovateľnej architektúry riadenia na úrovni podniku / holdingu;
  • Delegovanie úlohy budovania informačných tokov na analytické oddelenia;
  • Zníženie celkovej zložitosti integračnej schémy a zníženie požiadavky na šírku pásma kanála;
  • Zvýšenie celkovej stability transportnej vrstvy prenosu dát;
  • Zníženie transakčných nákladov pri výmene údajov medzi rôznymi oddeleniami;
  • Zníženie celkových nákladov na údržbu a údržbu informačného systému.

Hlavné vlastnosti systému:

  • Veľké množstvo konektorov rôzne systémy: 1С:Enterprise 8, SOAP služby, REST služby, MS SQL, IBM DB2, Oracle DB, PostgreSQL, SharePoint, OData, TCP, Siemens TeamCenter a ďalšie;
  • Zásuvný mechanizmus pre nezávislý vývoj konektorov;
  • Podpora rôznych programovacích jazykov a technológií pri vývoji scenárov interakcie: 1C:Enterprise 8, JavaScript, T-SQL;
  • Nastavenie viackrokových scenárov transformácie údajov pomocou mechanizmov vizuálneho mapovania a ľubovoľných transformácií XSLT;
  • Pracovať s rôznych formátov dáta (XML, JSON, XLS, DBF, CSV, Base64 a iné);
  • Statické a dynamické smerovanie informačných paketov;
  • Vysoká rýchlosť interakcie a odolnosť voči poruchám: znížené požiadavky na šírku pásma siete, vyvažovanie záťaže, izolácia informačných domén, možnosť monitorovať stav integračných uzlov;
  • Podpora modelu udalostí, synchrónne a asynchrónne volania, garantované doručenie;
  • Zmena integračných scenárov účastníckych systémov (mechanizmy pre vykladanie/načítanie, transformáciu a smerovanie) v „horúcom“ režime bez potreby ich zastavenia (vrátane konfigurácií na platforme 1C:Enterprise 8);
  • Diagnostika a monitorovanie všetkých integračných procesov, ladenie a sledovanie informačných balíkov.

Osobitná pozornosť sa venuje integrácii aplikácií na platforme 1C:Enterprise 8. Súčasťou dodávky je špeciálny subsystém, ktorý je zabudovaný do akejkoľvek štandardnej konfigurácie na platforme 1C:Enterprise 8 a poskytuje všetky potrebné mechanizmy pre rýchle a pohodlné nastavenie integrácie a správu. AXELOT: ESB Service Data Bus interaguje s konfiguráciou na platforme 1C:Enterprise 8 prostredníctvom služieb SOAP a REST.

Serverové komponenty "AXELOT: ESB Service Data Bus" sú vyvinuté v C++. Správa a konfigurácia „AXELOT: ESB Service Data Bus“ sa vykonáva vo vývojovom prostredí Eclipse a možno ju vykonávať v spojení s vývojom systémov na platforme „1C: Enterprise 8“ v „1C: Enterprise Development Tools“. "AXELOT: ESB Service Data Bus" je multiplatformový a podporuje Operačné systémy MS Windows a Linux.

AXELOT Datareon ESB je úplne ruský vývoj a je v procese zaradenia do jednotného registra ruských programov pre elektronické počítače a databázy, ktoré si môžu štátne a mestské inštitúcie zakúpiť na riešenie určitých problémov.

Podľa môjho názoru existujú dva prístupy k budovaniu zbernice podnikovej integrácie:


  • „z integrovateľných systémov“;

  • „z realizovaných procesov“.

Pozrime sa na tieto prístupy podrobnejšie.

Prístup „z integrovateľných systémov“

V tomto prípade sa integračná zbernica považuje za druh prenosu, ktorý vykonáva smerovanie a vyjednávanie protokolov správ. Všetky správy prechádzajú reťazcom: vstupný kanál adaptéra zdrojového systému -> router -> výstupný kanál systému prijímača. Typ komunikácie medzi týmito komponentmi a špecifickými technológiami závisí od toho, či správy prichádzajúce z jedného zdrojového systému môžu mať viacero cieľových systémov, od očakávanej záťaže a prístupu k zabezpečeniu integrity údajov (pomocou spoločnej transakcie pre všetky zdrojové systémy, alebo sa údaje prenášajú do každý zdrojový systém vo svojej transakcii).

  1. Závislosť na systémoch, nie na typoch správ. Zvyčajne je počet integrovaných systémov niekoľkonásobne menší ako počet prenášaných typov správ.

  2. Jednoduché pripojenie nových prijímacích systémov: na pripojenie nového prijímacieho systému stačí zadať údaje do smerovacej tabuľky.

  3. Jednoduchosť implementácie monitorovacieho systému integračného riešenia: údaje pre monitorovací systém je možné generovať na jednom mieste – v routeri (tento bod však možno akceptovať len s výhradou, keďže existujú údaje, ktoré sa generujú len v adaptéry integrovaných systémov).

  4. Jednoduché riešenie podpory. Keďže všetky správy prechádzajú cez jeden smerovač, celá logika odovzdávania správ a sledovanie závislostí medzi správami môže byť implementovaná na jednom mieste – v tomto smerovači.

  5. Zdieľanie systému medzi vývojármi. Keďže jadro systému a všetky adaptéry sú na sebe nezávislé (komunikácia je zabezpečená len cez dedikované a popísané rozhrania), úlohy na ich vývoj je možné rozdeliť medzi programátorov, čo umožňuje paralelizáciu procesu tvorby a implementácie integračného riešenia.


  1. Riešenie je použiteľné len pre implementáciu jednotnej logiky odovzdávania správ, t.j. ak existujú pravidlá na sledovanie závislostí a transformácie, ktoré sú spoločné pre všetky alebo väčšinu správ. Ak odlišné typy správy majú úplne inú logiku sledovania závislostí a správy výmeny, buď sa to bude musieť presunúť na adaptéry, čo eliminuje výhodu 4, alebo to nebude možné implementovať vôbec.

  2. Táto schéma je vhodná na implementáciu asynchrónnej výmeny. V prípade synchrónnej alebo zmiešanej výmeny zložitosť pri implementácii tento prístup výrazne zvyšuje.

  3. Môže dôjsť k zníženiu výkonu riešenia. Napríklad, ak má byť správa prenesená do každého z prijímacích systémov v samostatnej transakcii, vyžaduje sa oddelenie zdrojového systému, jadra a prijímacích systémov pomocou front. Tieto fronty sa môžu stať prekážkou systému.

Prístup "z implementovaných procesov"

V tomto prípade sa každý obchodný proces posudzuje samostatne, v ktorom je potrebná výmena údajov medzi viacerými systémami. Autobusové náradie túto výmenu. Udalosťou, ktorá spustí proces výmeny, je prijatie správy zo zdrojového systému. Správa prijatá zo zdrojového systému sa prenáša do jedného alebo viacerých prijímacích systémov, pričom sa realizujú nielen transportné funkcie, ale monitoruje sa aj výsledok spracovania správy a prenášaná správa sa koreluje s ostatnými.

Tento prístup má nasledujúce výhody:


  1. Flexibilita. Tento prístup vám umožňuje implementovať vlastnú, samostatnú logiku výmeny pre každý typ správy. Táto logika môže byť celkom netriviálna.

  2. Zložitosť implementácie asynchrónnej aj synchrónnej výmeny je približne rovnaká.

  3. Nezávislosť vlákien, presnejšie v tomto prípade je správnejšie hovoriť o procesoch. Technické rozhodnutia prijaté počas implementácie jedného výmenného procesu neovplyvňujú zložitosť implementácie iného.

Tento prístup má nasledujúce nevýhody:


  1. Závislosť od typu správ. Zvyčajne je počet typov správ mnohonásobne väčší ako počet integrovaných systémov. Pri pripájaní nového zdrojového systému na zbernicu je potrebné smerovať správy podľa typov a implementovať samostatný proces výmeny pre každý typ správy.

  2. Ak musí byť rovnaká logika výmeny implementovaná pre niekoľko typov správ, potom je možná duplikácia nastavení kódu a/alebo zbernice.

  3. Procesy odovzdávania správ závisia od systémových adaptérov a môžu závisieť jeden od druhého, ako aj od servisných procesov. Prítomnosť takýchto závislostí znižuje stupeň paralelizácie procesu vývoja a implementácie integračného riešenia. Vývojári niektorých komponentov závisia od výsledkov práce vývojárov iných komponentov integračného riešenia.

Výber prístupu sa vykonáva podľa nasledujúceho algoritmu:


  1. Získajte zoznam a popis integrovaných systémov a typov správ od analytikov.

  2. Získajte od analytikov zoznam a popis obchodných procesov, ktoré zahŕňajú systémy vyžadujúce integráciu.

  3. Ak sú procesy triviálne a existuje oveľa menej systémov ako typov správ, výmena je prevažne asynchrónna a vyžaduje sa aj prenos jednej správy do viacerých systémov, volíme prvý prístup. Rozhodnite sa o politike riadenia transakcií.

  4. Ak procesy implikujú prevažne synchrónnu výmenu, pričom procesy sú zložité, t.j. prechod správy závisí od výsledkov jej spracovania v prijímacích systémoch, vtedy volíme druhý prístup. Ďalším argumentom v prospech tohto prístupu je skutočnosť, že počet typov správ je porovnateľný s počtom integrovaných systémov.

Je potrebné jasne pochopiť, že tieto metódy implementácie nie sú dogmou, nie je potrebné zvoliť len prvý prístup alebo iba druhý. Vždy sa dajú kombinovať, moderné podnikové servisné pneumatiky ( ESB) vám to umožní.

Páči sa mi príspevok -

Týmto článkom by som chcel otvoriť cyklus venovaný IBM WebSphere ESB (ďalej len ESB) v kontexte vývoja tohto produktu. A v prvom rade sa budete musieť zoznámiť s technológiami tohto druhu.
Podniková servisná zbernica (enterprise service bus) je middleware, ktorý poskytuje centralizované a jednotné zasielanie správ orientovaných na udalosti medzi rôznymi informačnými systémami založené na princípoch architektúry orientovanej na služby.
Samozrejme, je možné, aj bez špeciálneho softvéru (možno ešte bude treba vyvinúť niečo všeobecné), vybudovať firemný systém založený na tomto prístupe a to, čo sa stane vo výsledku, možno nazvať servisnou zbernicou. Ale v produkte od IBM je nielen hotový aparát na centralizované zasielanie správ a riadenie tohto procesu, ale aj Plný set príležitosti na vývoj flexibilných aplikácií orientovaných na služby špeciálne pre ESB. V súhrne možno vyzdvihnúť nasledujúce funkcie a výhody IBM WebSphere ESB:

  • Poriadok a jednotnosť architektonických vzťahov
  • Centralizované riadenie
  • Konfigurácia aplikácie na strane servera
  • Implementácia technológie Service Component Architecture (SCA) v duchu princípov architektúry orientovanej na služby
  • Protokolová nezávislosť vyvinutého programového kódu
  • Rozsiahle možnosti konfigurácie zbernice a aplikácií
ESB zároveň poskytuje transakčnú kontrolu, transformáciu dát, bezpečnosť a garantované doručovanie správ. Prístup ku všetkým službám prostredníctvom jedného bodu vám umožňuje centrálne nakonfigurovať komunikáciu služby. Môžete tiež centrálne spravovať udalosti zlyhania pre hromadné spracovanie chýb.
Klasická topológia zostavy ESB je klaster, ktorý poskytuje horizontálnu škálovateľnosť a odolnosť voči chybám. Podľa oficiálnych odporúčaní zvýšenie počtu členov klastra zvyšuje výkon efektívnejšie ako zvýšenie kapacity servera v samostatnej topológii. Okrem toho je možné klaster reštartovať (alebo jeho časť môže zlyhať) bez zastavenia služby.
ESB sa zvyčajne používa ako vrstva služieb v IBM BPM, ale môže hrať vedúcu úlohu pri vytváraní modelu interakcie. podnikové systémy ako výkonné integračné zariadenie (to znamená ESB ako doplnok nad IBM WebSphere Application Server).
Toto sa v skutočnosti vyžaduje od ESB, pretože ide o „miesto zberu služieb“ - ak potrebujete službu, ktorá bude fungovať s inými službami (možno externými), potom sa integrácia medzi týmito službami najlogickejšie vykonáva na ESB. . Pre externé alebo heterogénne služby môžete urobiť „obal“ službou ESB. Poďme si trochu ilustrovať pohodlie používania „single housingu“ pre služby:

objednať
Čím je systém väčší, tým je v ňom dôležitejší poriadok a jednotnosť. Ak hovoríme o komplexe systémov veľkého podniku, určite ho možno nazvať systémom veľkej veľkosti. Samozrejme, vždy môžete nájsť správcu s diagramom interakcie stoviek serverov v hlave alebo s množstvom nesúvisiacej dokumentácie pre každý softvérový modul, ktorá popisuje, s čím a ako interaguje.


Je však oveľa jednoduchšie mať službu (ESB), ktorá vám umožní vykonávať všetku interakciu prostredníctvom nej. S týmto prístupom je časť interakčnej architektúry v akomkoľvek subsystéme už jasná – v komunikácii medzi systémami, servermi a aplikáciami nie je žiadny neporiadok: všetko je pripojené k ESB a ESB je pripojené ku všetkému.

Centralizované riadenie
Vždy je pohodlnejšie konfigurovať systémy centrálne – či už ide o konfiguráciu, prispôsobenie sa premiestneniu servera, odolnosť voči chybám, vyvažovanie záťaže, spracovanie chýb alebo monitorovanie a analýzy.


Napríklad pri presúvaní databázového servera sa nemusíte dostať do konfigurácie všetkých existujúcich aplikačných serverov a v nastaveniach konkrétnych aplikácií obzvlášť - stačí mať jednu premennú prostredia v ESB, ktorá špecifikuje databázu adresu a potom bude potrebné vykonať zmeny len v jednom bode.
Alebo ak bol niektorý z externých systémov dlhší čas nedostupný a nemala by sa stratiť ani jedna požiadavka naň, môžete využiť službu na spracovanie neúspešných udalostí a „vhadzovať“ nedoručené správy, keď je to vhodné.
Ak potrebujete regulovať počet simultánnych požiadaviek na akýkoľvek systém, alebo tieto požiadavky monitorovať, analyzovať záťaž, hľadať úzke miesta – musíte ísť do riadiaceho centra správ – na konzolu servera ESB.

Konfigurácia na strane servera
„Single housing“ pre služby, pokiaľ ide o konfiguráciu, umožňuje dosiahnuť niekoľko užitočných cieľov. Prvým je opätovné použitie konfigurácie (podobne ako opätovné použitie kódu a modulov, ktoré je tak užitočné v SOA), pretože rôzne moduly a aplikácie môžu používať rovnaké parametre pripojenia k databáze, prostriedky, parametre autentifikácie, premenné prostredia atď.


Po druhé, pri konfigurácii na strane servera to môže do značnej miery ovplyvniť aplikačné prostredie, ktoré vám umožňuje prenášať aplikácie medzi rôznymi okruhmi (testovacie a produkčné), ladiť a dokonca opravovať chyby bez toho, aby ste v aplikácii robili zmeny.

Ak využijete všetky tieto výhody, aplikácie získajú schopnosť pravého chameleóna – sú natoľko flexibilné, že sa stanú súčasťou prostredia, v ktorom pracujú, a zároveň prinášajú svoju dôležitú funkcionalitu.

Ale flexibilita aplikácií pod IBM WebSphere ESB nie je obmedzená na prostredie, v ktorom bežia. Vývojové schopnosti k tomu výrazne prispievajú. Keďže systémy musia mať nielen miesto na spustenie, ale aj vývoj a finalizáciu, nemali by ste vynechať tieto zaujímavé body:

SCA
Táto architektúra je založená na princípe, že komponent poskytuje svoju funkčnosť ako službu dostupnú pre ostatné komponenty. V rámci jedného modulu sú komponentmi programové bloky (java kód), ktoré plne implementujú niektoré funkcie popísané príslušným rozhraním. Logika vykonávania komponentov je implementovaná ich prepojením do štruktúry pomocou rozhraní a odkazov (Partner Reference).

Je veľmi vhodné vyvíjať, kontrolovať, vyvíjať, meniť a udržiavať takúto modulovú štruktúru. Atómickosť funkčnosti implementovanej v komponentoch vám umožňuje pracovať s komponentmi ako celkom bez toho, aby ste sa dostali na úroveň kódu. Na druhej strane je to logicky nevyhnutné kvôli vykonávaniu implementácií komponentov v transakčnom kontexte.
Každý komponent má rozhranie (rozhrania), ktorého implementáciu poskytuje. Tým, že sú komponenty navzájom prepojené, nie je potrebné ich poznať vnútorné vlastnosti– stačí, aby implementovali potrebné rozhrania.
Prostredníctvom tejto architektúry môžete tiež vyriešiť všetky úlohy, ktoré vyžadujú paralelnú prácu, bez „manuálneho“ riadenia toku (napríklad môžete uskutočniť asynchrónne volania viacerých komponentov s oneskorenou odozvou).
Nejava komponenty, ako napríklad typy Export a Import, vám umožňujú poskytovať služby pre vonkajšie použitie alebo podľa toho využívať externé služby; Komponent Mediation Flow poskytuje nízkoúrovňový prístup k správam vymieňaným inými komponentmi a umožňuje rôzne transformácie pri práci s heterogénnymi rozhraniami.
Okrem rozhraní poskytuje rámec obchodných objektov IBM veľmi užitočné funkcie. Obchodné objekty (BO), reprezentované xsd schémami, sa používajú ako objekty na prenos dát v rozhraniach, a to ako medzi komponentmi, tak aj na komunikáciu medzi modulmi. Sú priamo integrované napríklad do schémy wsdl na popis webových služieb. To znamená, ak napríklad modul „A“ poskytuje svoju funkcionalitu vo forme webovej služby, na jej používanie stačí modul „B“ prepojiť rozhranie a hotové BO a bude môcť plne pracovať s takouto službou bez vytvárania ďalších java -objektov na prenos dát. BO je tiež vhodné použiť pri výmene údajov s databázou, ak tieto údaje využívajú iné komponenty (to je, samozrejme, proti vzoru „DAO“, ale eliminuje to zbytočné java objekty a operácie prepisovania údajov „tam a späť“ ).

Protokolová nezávislosť programového kódu
Ako vidíte, protokolová nezávislosť kódu sa dosahuje pomocou komponentov Export a Import. Keďže komunikácia s týmito komponentmi prebieha cez rozhrania a referencie, programovací kódúplne nezávislé od protokolu použitého na interakciu. Rovnakú funkcionalitu možno jednoducho sprístupniť na ľubovoľnom počte podporovaných protokolov a na ľubovoľnom správne rozhrania. Nasledujúci obrázok ukazuje, ako pridať export s väzbou SCA do objektu bean, ktorý už odhaľuje svoje rozhranie ako HTTP, JMS a webovú službu.


Výhody sú zrejmé – flexibilita, všestrannosť, opätovné použitie kódu, rýchlosť vývoja a modifikácie.
Mimochodom, väzba SCA používa špeciálny protokol a je určená na komunikáciu medzi modulmi v rámci rovnakého servera/klastra. Komunikácia prostredníctvom tejto väzby je menej náročná na zdroje a rýchlejšia ako iné protokoly.

Konfigurácia
Konfigurácia servera a aplikácie sa vykonáva prostredníctvom konzoly IBM servera.
ESB, podobne ako IBM WebSphere vo všeobecnosti, má pomerne veľa špecifických funkcií a artefaktov. Napríklad, keď používate rovnaké importy a exporty, môžete konfigurovať koncové body zodpovedajúcich služieb za behu. Pre volania služby môžete nakonfigurovať sady politík s rôznymi pravidlami (napríklad môžete nainštalovať podporu pre mechanizmus WS-AT, ktorý vám umožňuje volať webovú službu v tej istej transakcii, v ktorej pracuje klient; ale transakcia je už tému na celý článok), nastavenie parametrov autentifikácie, pripojenie certifikátov a ďalšie.
Prostredníctvom konfigurácie môžete nastaviť niektoré mechanizmy pre automatickú reakciu na výnimočné situácie (napríklad automatické opakovanie spúšťania komponentov v prípade chýb). Môžete nastaviť sledovanie komponentov za chodu alebo zmeniť úrovne protokolovania. K dispozícii je aj služba správy udalostí zlyhania, ktorú možno zámerne použiť na hromadné spracovanie chýb.
A samozrejme môžete konfigurovať mnoho ďalších vecí podľa špecifikácie Java2EE, ktorá je implementovaná, niekedy dosť striktne, v IBM Application Server.

Všetko vyššie uvedené potvrdzuje ESB ako pohodlný, výkonný a flexibilný integračný aparát, aj keď nie vždy je ľahké sa ho naučiť. V budúcnosti sa stačí naučiť, ako ho používať.

V článku boli použité nasledujúce obrázky:

So SOA sa osobne poznám už 10 rokov, za túto dobu som si vytvoril jasný asociatívny reťazec: základom SOA je dátová zbernica, no a od dátovej zbernice hovoríme o integračných projektoch.

Nebudem rozvíriť históriu, všetci si pamätáme, ako sa svojho času vyvíjala integrácia: dlhá a bolestivá cesta od point-to-point konceptu až po zbernicu s dedikovaným dátovým modelom v integračnej vrstve. Dnes už hovoríme o integračnom produkte Neoflex Integra, ktorý má analóg ruský trh zatiaľ neexistuje automatizácia bankovníctva, aby sa počiatočná fáza analytiky mohla výrazne znížiť a zároveň okamžite vyhodnotiť výsledok budúceho integračného projektu.

Neoflex Integra sa objavil po 450. alebo dokonca 455. integračnom projekte realizovanom v banke. Je ťažké presne určiť. Pokúsili sme sa však vypočítať človekodne venované integračnej praxi našimi zamestnancami a vyšlo nám to približne 137 rokov. Integrácia bola vždy jednou z hlavných oblastí práce Neoflexu, takže by ste nemali byť prekvapení takýmto údajom. Za ten čas sa nám podarilo pochopiť dve veci. Po prvé, krajiny v úverových inštitúciách sú klasifikovateľné. Po druhé, medzi integračnými projektmi je veľa spoločného, ​​aspoň vo fáze analýzy. Vyčlenili sme základ vo forme všeobecného kanonického modelu obsahujúceho aplikačné objekty a vzťahy medzi nimi, spájajúce atomické služby do obchodných procesov v oblastiach činnosti finančnej organizácie. Vyzerá to fantasticky, ale teraz môžeme prísť do banky so súborom hotových „detailov“ a použiť ich na vytvorenie budúceho integračného modelu. Neoflex Integra je nový produkt, informovali sme o ňom v marcovom vydaní The Retail Finance. No už dnes môžeme povedať, že umožní skrátiť lehotu realizácie integračného projektu asi o štvrtinu, navyše banka už nekupuje „prasa v žite“, ako to bolo predtým, platí za tzv. veľmi jednoznačný výsledok. Vráťme sa však k SOA a tých, ktorých zaujíma téma integračného produktu, pozývam na webinár „Nový produkt Neoflex Integra: kvintesencia projektových skúseností“ 20. novembra.

Čo sa teda bude diať ďalej, ako sa bude SOA vyvíjať, ostane dátová zbernica a bude mať rovnaké čestné miesto ako teraz v prostredí úverov, a ak sa pozriete širšie, potom nielen úverová organizácia? Začnem z diaľky, o SOA všeobecne, o tom, aký je osud tohto konceptu v bankovom sektore. V skutočnosti je správna IT architektúra pre banku taká, ktorá dokáže splniť jej obchodné potreby. Čím väčšia banka, tým vyššie požiadavky. V Rusku s jeho viacodvetvovými, geograficky rozmiestnenými štruktúrami je dostatok veľkých bánk, ale ani tie si nemôžu vždy dovoliť kvalitnú SOA krajinu, a to nielen preto, že je veľmi drahá, ale aj preto, že je to obrovské riziko. SOA projekty nie vždy končia dobre. S naším produktom plánujeme znížiť riziká a zároveň hranicu pre vstup do SOA.

Nemyslite si, že prostredie SOA je biznis s potrubím. Projekty Neoflex ukazujú, že neexistujú žiadne neintegrovateľné systémy. Banky zvyčajne začínajú postupne vytvárať novú krajinu, počnúc oblasťami, ktoré sú pre nich najdôležitejšie, no v poslednej dobe sme narazili na rozsah, ktorý sme doteraz nevideli. Stalo sa to na projekte v banke VTB24. Spoločnosť tam pracovala na vytvorení vrstvy univerzálnych bankových služieb založenej na balíku Oracle SOA Suite. Riešenie zahŕňalo viac ako 600 služieb, ktoré zabezpečujú prácu banky so všetkými klientmi prostredníctvom všetkých komunikačných kanálov. Takéto veľké a zložité rozhodnutie si podľa kolegov z Oracle v Rusku nebudú pamätať. A ak by sa to podarilo, tak ďalšie projekty sú čisto technicky realizovateľné.

Potrebu vytvoriť jednu logickú vrstvu a optimalizovať IT priestor najviac pociťujú banky, ktoré prevádzkujú veľké množstvo retailových projektov. Rýchlosť zákazníckych služieb je tu rozhodujúca a techniky používané v praxi SOA ju môžu výrazne zvýšiť vďaka rýchlejšiemu toku dát. Preto popredné banky ako VTB24, Probusinessbank ( Skupina života), s ktorými tiež pracujeme, pred časom prijali dlhodobé programy prechodu SOA. Či budú menšie organizácie nasledovať ich príklad, je ťažké povedať: kríza je predsa. Ale čisto praktické úvahy sú nasledovné. Ak sa pokúsime nakresliť podmienenú hranicu medzi tými, ktorí potrebujú SOA, a tými, ktorí si vystačia s jednoduchšími riešeniami, tak táto hranica pred začiatkom stagnácie na trhu prechádzala približne cez 400 najlepších bánk.

V iných oblastiach bankovej automatizácie sa po komponentizácii systémov úspešne udomácnil koncept maximalizácie využitia hotovej funkcionality, alebo koncept produktu. Myslím si, že SOA by nemala byť výnimkou. Ale to je vec budúcnosti. Medzičasom mnohé banky žijú v úplne inej realite a otázka na ich programe nie je, ktorý integračný produkt použiť, ale aký autobus implementovať. Poďme z neba na zem.

Čo robiť s IBM WebSphere ESB?

IBM WebSphere ESB je nepochybne lídrom na trhu medzi integračnými zbernicami ako v počte projektov, tak aj v počte implementácií. Z 10 integračných projektov je 8 realizovaných na IBM WebSphere ESB. A až v posledných 2 rokoch sa situácia začala trochu meniť a na trhu sa začali objavovať hnutia ďalších významných svetových predajcov. Nerád by som ich porovnával v rámci tohto článku, keďže bez neho existuje dostatok porovnaní a analytických štúdií na túto tému. Môj článok je určený tým, ktorí raz urobili krok smerom k SOA a urobili to spolu s IBM WebSphere ESB. A museli sa vážne obávať: zrazu, ako sneh na ich hlavách, minuloročná správa, že IBM od roku 2014 zmenilo produktový rad integračného softvéru a IBM Web Sphere ESB sa už nebude vyvíjať a podpora pre tento komplex bol len nedávno predĺžený do apríla 2018. Predtým sa plánovalo jeho dokončenie v roku 2014.

V tejto súvislosti si čoraz viac našich zákazníkov, ktorí túto integračnú platformu využívali, začalo klásť otázky, čo ich čaká.

Zázraky sa nedejú a ja nie som kúzelník, ale chcem ponúknuť dva spôsoby:

1. Začnite uvažovať o využití ďalšej platformy, na ktorú IBM vsádza v budúcnosti – Integration Bus (bývalý Message Broker).

Oproti IBM WebSphere ESB má zjavné výhody: výkon a spoľahlivosť. Projektov a implementácií s touto platformou je tiež dosť a niekto si ju od začiatku vybral ako integračnú zbernicu.

Jeho hlavnou technologickou vlastnosťou je interné využitie Message Queuing (MQ) ako transportu, čo nám dáva garantované doručenie správ a v dôsledku toho spoľahlivosť.

2. Už teraz sa pri vývoji integračného riešenia na IBM WebSphere ESB pokúste oddeliť úrovne implementácie, aby ste vytvorili nový kód nie na IBM WebSphere ESB, ale na iných komponentoch, ktorých použitie v integračnom riešení zodpovedá stratégii ďalšieho vývoja. Vhodných produktov od IBM nie je veľa, iba 2-3. Jednou z nich je podľa mňa najperspektívnejšia IBM WebSphere Data Power, hardvérový a softvérový systém na riešenie integračných problémov, ktorý poskytuje vysoký výkon a certifikovanú bezpečnosť. Výhodou tohto produktu je najvyšší výkon vo svojej triede a schopnosť riešiť širokú škálu bezpečnostných úloh, externých aj interných.

K dnešnému dňu máme viac než pôsobivé výsledky z jedného z pilotných projektov s IBM Data Power, ktorý bol dokončený v Renaissance Credit Bank: 40 požiadaviek za sekundu je spracovaných s 5 000 súčasnými pripojeniami a čas spracovania 1 požiadavky je kratší ako 1 ms. Stojí za zmienku, že zaťaženie procesora počas testov bolo na úrovni 5%!

Používanie IBM Data Power pomôže oddeliť vrstvy integračného riešenia medzi IBM WebSphere ESB a IBM DataPower, takže keď nahradíte IBM WebSphere ESB novou integračnou zbernicou, napríklad s IBM Integration Bus, nebudete musieť túto časť prerobiť. pre IBM DataPower.

Tento hybridný autobusový prístup je možné implementovať aj na základe produktov od iných predajcov, t.j. nielen IBM. Pretože vývoj produktov mnohých predajcov sa často uberá rovnakým smerom, ale toto je téma na samostatnú diskusiu.

Ako by mala vyzerať integračná dátová zbernica v blízkej budúcnosti?

Tu vás chcem len upozorniť na skutočnosť, že návrhy, ktoré som opísal, veľmi dobre zodpovedajú myšlienke pneumatiky, ktorá sa podľa mňa uskutoční v budúcnosti. Zavedením konceptu „hybridného“ autobusu a kombinovaním technológií dosahujeme riešenie rôznych integračných problémov. Okrem toho hovoríme o kombinovaní softvéru a riedení „čistého“ softvéru pomocou softvérových a hardvérových systémov.

V dnešnej dobe je veľmi ťažké pokryť všetky požiadavky podnikania jedným produktom. Starý, osvedčený princíp „najlepšieho z plemena“ je preto dokonale použiteľný na integračné pneumatiky.

Vezmite niekoľko produktov, skombinujte ich s jednou spoločnou úlohou, oddeľte medzi nimi komponenty, „nasaďte“ ich na spoločný integračný dátový model a získate nielen multifunkčné riešenie, ale sa aj ochránite pred „závislosťou na produkte“.

Tak sme našli dve jednoduché riešenia, z ktorých každá má svoje výhody:

· IBM WebSphere ESB v kombinácii s IBM Integration Bus sa používa na budovanie platforiem SOA, integráciu komplexných aplikácií a IT prostredí;

Vysoký výkon produkt IBM DataPower, ktorý sa vyznačuje jednoduchou konfiguráciou, sa používa na spracovanie jednoduchých požiadaviek a na poskytovanie multifunkčného zabezpečenia.

Budúcnosťou sú nepochybne hybridné autobusy, pokiaľ nemáme dátovú zbernicu v cloude, aj keď to teraz vyzerá nepravdepodobne. K tejto problematike sa vrátime o rok či dva. Súhlasíš?

S blokom BPM-systémov sa tu zámerne neuvažovalo, pretože. toto je samostatná rozsiahla téma.