Programiranje

Sonic ESB: Programabilna integracija

Pritisk na integracijo različnih sistemov v podjetju se nenehno povečuje, vendar vzpostavljanje povezav med sistemi, tudi tistimi, namenjenimi integraciji, ostaja zastrašujoča naloga.

Tradicionalno so podjetja povezovala sisteme, ki uporabljajo povezave od točke do točke in kodo po meri. V zadnjem času so se kot druga rešitev pojavili integracijski posredniki - lastniška programska oprema za ustvarjanje povezav med več sistemi. Vendar je povezave od točke do točke drago vzdrževati, posredniki za integracijo pa jih je bilo drago kupiti.

Sonic ESB je eden od novih sklopov izdelkov, ki se obračunavajo kot avtobusi za storitve podjetja (ESB), lahki posredniki za integracijo, ki temeljijo na standardih, kot sta XML in SOAP, namenjeni delu v porazdeljenem okolju.

Podjetjem, ki želijo postopoma pristopiti k integraciji aplikacij za podjetja, bodo ESB izjemno v pomoč. Z modelom vodila je mogoče najprej vključiti nekaj aplikacij z največjim povračilom; druge aplikacije lahko kasneje zložite, ko postanejo na voljo denar in viri. Ker so ovire za vstop majhne, ​​se lahko ti integracijski projekti začnejo že od malega, jih je mogoče natančno voditi in rasti, da bodo ustrezali prihodnjim potrebam.

Sonic ESB 5.0 si prizadeva ponuditi te prednosti, tako da združuje sporočanje, usmerjanje, spletne storitve in preoblikovanje sporočil, da integrira in orkestrira dejanja več končnih točk internetnih aplikacij.

Eyeing Sonic's ESB Architecture

Tipični integracijski posrednik ima pesto in arhitekturo s kraki. Sonic ESB pa je zgrajen na vrhu sporočila usmerjenega vmesnega izdelka Sonic Software, SonicMQ, ponudnika JMS (Java Message Service) za aplikacijske strežnike J2EE. SonicMQ zagotavlja Sonic ESB upravljanje konfiguracije in izvajanja, posrednike sporočil in upravljane vsebnike. Interakcije med SonicMQ in ESB so tako natančne in popolne, da ni čudno, da jih Sonic Software omenja kot paket.

Ker je Sonic ESB zgrajen na infrastrukturi za pošiljanje sporočil, je njegovo arhitekturo vodila mogoče distribuirati po poslovnem omrežju LAN ali globalnem internetu. Vozlišča za sporočanje je mogoče zaradi zanesljivosti namestiti v gruče na več strojih, te gruče pa se lahko združijo z gručami na drugih lokacijah, da zagotovijo oddaljene točke integracije.

Poleg tega je upravitelj domen integriran v sistem in služi kot imenik za storitve, razporejene v omrežju.

Zabojniki upravljajo končne točke, ki nato upravljajo življenjski cikel storitev, ki zagotavljajo usmerjanje, orkestracijo toka procesa, preoblikovanje podatkov in varnost. Ti zabojniki tudi prilagajajo končne točke starejšim sistemom. Na voljo je na primer adapter J2EE za povezavo sistemov, ki temeljijo na J2EE, na vodilo. Storitveni vsebniki običajno gostijo ločeno od strežnikov za pošiljanje sporočil, pri čemer se vsak nahaja skupaj s starejšim sistemom, ki ga služi.

Sporočila se usmerijo s priloženim načrtom poti, ustvarjenim prek upravljalne konzole. Vsebinsko usmerjanje poteka znotraj storitev končne točke s pomočjo XPath za ogled priloženih dokumentov XML in pogojno usmerjanje na podlagi vsebine dokumenta. Storitev preoblikovanja uporablja XSLT (eXtensible Style Language Transformation). Izdelek Sonic Software Stylus grafično ustvarja dokumente XSLT, ki se preoblikujejo iz ene sheme XML v drugo, vendar bo delovalo tudi katero koli drugo orodje XSLT.

Iskanje integracijskega arhitekta

Ko sem bil v drugem razredu, je otrok iz mojega razreda prinesel igračo za elektroniko, ki vam je omogočila, da zgradite radio in druge preproste elektronske naprave, tako da sledite priloženim shemam in skupaj kliknete bloke. Ko sem pregledoval Sonic ESB, si nisem mogel kaj, da se ne bi domislil povezanih programov, ko sem z upravljalno konzolo na osnovi GUI manipuliral z njegovo konfiguracijo.

Čeprav veliko tega, kar počnete, ko nastavite Sonic ESB, samo manipulira konfiguracijske datoteke, je končni rezultat postopek, ki manipulira s podatki. To je več kot le konfiguracija, ki temelji na politikah - to je programiranje.

Programiranje Sonic ESB se ne izvaja z enotno notacijo, ampak vključuje pisanje delčkov Java in JavaScript skupaj z datotekami XSLT, shemami XML in WSDL. Več različnih grafičnih orodij vse to razvrsti v splošno konfiguracijo, ki daje pravilno usmerjanje in servis za želeni rezultat.

Sonic Software v priročniku Kako začeti ponuja izčrpen primer dobavne verige. Če delate skozi ta primer, boste pospešili glavne načine interakcije ESB in vas seznanili s koncepti in orodji za upravljanje, potrebnimi za konfiguracijo in uporabo vodila.

Ko sem šel skozi postopek konfiguracije, me je presenetilo, kako težko je bilo slediti vsem različnim delom, kaj so počeli in kako se ujemajo. Upravljalske konzole Sonic ESB so tako dobre, kot sem že videl. Vendar niso programska okolja - ponujajo le osnovno podporo za abstrakcijo. Tok postopka na primer omogoča poimenovanje in vdelavo, vendar so tako pomembne stvari, kot je pogojni tok, skrite v datotekah JavaScript in XSLT.

Dodatna obremenitev so različni formati - shema Java, JavaScript, XSL, XML itd., Ki opisujejo postopek in podatke. Torej, čeprav je uporaba Sonic ESB dejanje programiranja, gre za izdelek, ki temelji na grozdu tehnologij in ne na enem samem dobro zasnovanem zapisu.

To ni nujno krivda Sonic Software. Delajo z orodji, ki jih od njih zahtevajo tehnologije in standardi, ki jih zahtevajo njihove stranke. Dvomim, da bi Sonic Software lahko spodbudil sprejetje bolj enotnega zapisa.

Ker enoten zapis ni na voljo, je malo vizualnih znakov za razumevanje toka sporočil, pogojev napak in pretvorbe podatkov. Brez slik in opisa v priročniku za začetek bi bilo razumevanje toka sporočil v navedenem primeru dobavne verige težko. Spoznal sem, da je vodnik za začetek, obrnjen navzven, pravzaprav sistemska arhitektura; slike in opisi v priročniku so verjetno enaki tistim, ki so jih razvijalci primera uporabili med ustvarjanjem.

Uspešna uporaba izdelkov, kot je Sonic ESB, bo zahtevala enako skrbno načrtovanje razvijalcev, ki delujejo kot "arhitekti integracije". Orodja, tehnike in metodologije modeliranja, ki so na voljo arhitektom integracije, so še vedno osnovna, vendar Sonic ESB ponuja obsežen nabor orodij, potrebnih za izvedbo integracije, ko je načrtovana.

Prilagodljivost po ceni

Sonic ESB v kombinaciji s SonicMQ ponuja na standardih temelječo metodo za integracijo starejših in novih aplikacij v celotnem podjetju na zanesljiv in stroškovno učinkovit način. Integriranje nabora sistemov s sistemom Sonic ESB bi moralo stati manj kot uporaba lastniških posrednikov za integracijo.

Ko smo pregledali SonicXQ, predhodnika Sonic ESB, smo ugotovili, da »SonicXQ razvijalcem ponuja trden nabor varnih in zanesljivih storitev BPM (upravljanje poslovnih procesov)« (glejte »Ohranjanje BPM na pravi poti«, 30. september, stran 26).

To se ni spremenilo. Toda medtem ko so orodja za upravljanje zdaj precej izboljšana, Sonic ESB 5.0 pogosto zahteva zapleteno konfiguracijo. Za njegovo delovanje je potrebno znatno znanje pri tehnologijah, kot so J2EE, vmesna programska oprema, usmerjena v sporočanje, XML, XSLT, XPath, JavaScript in Java.

To je cena prilagodljivosti. Nekatera orodja so namenjena enostavni uporabi in se celo ponašajo s tem, da jih lahko poslovneži uporabljajo za upravljanje poslovnih procesov. Toda nobeden od njih ne ponuja prilagodljivosti, potrebne za popolno integracijo sistema. SonicESB ponuja to prilagodljivost, vendar le, če imate razvijalce in arhitekte integracije, ki jo izkoristijo.

Preglednica Upravljivost (15.0%) Enostavnost uporabe (10.0%) Podpora (10.0%) Razširljivost (25.0%) Interoperabilnost (25.0%) Zanesljivost (15.0%) Skupna ocena (100%)
Sonic ESB 5.05.06.07.09.09.09.0 7.9
$config[zx-auto] not found$config[zx-overlay] not found