SOA vs. ESB
SOA on joukko arkkitehtonisia konsepteja, joita käytetään palvelujen kehittämiseen ja integrointiin. Palvelu on julkinen toimintopaketti, jota tarjotaan verkossa. ESB on infrastruktuuriohjelmisto, joka tarjoaa ohjelmistoarkkitehtuurirakenteen peruspalvelujen tarjoamiseksi monimutkaisille arkkitehtuureille. ESB: tä voidaan käyttää alustana, jolla SOA toteutetaan.
Mikä on SOA?
SOA (Service-Oriented Architecture) on joukko arkkitehtonisia konsepteja, joita käytetään palvelujen kehittämiseen ja integrointiin. SOA käsittelee hajautettua tietojenkäsittelyä, jossa kuluttajat käyttävät joukkoa yhteentoimivia palveluja. Useat kuluttajat voivat käyttää yhtä palvelua ja päinvastoin. Siksi SOA: ta käytetään usein useiden eri alustoja käyttävien sovellusten integroimiseen. Jotta SOA toimisi moitteettomasti, palvelut tulisi yhdistää löyhästi käyttöjärjestelmiin ja taustalla olevien sovellusten tekniikoihin. SOA-kehittäjät luovat palveluja toiminnallisuuden yksiköillä ja asettavat ne saataville Internetin kautta. Verkkopalveluita voidaan käyttää SOA-arkkitehtuurin toteuttamiseen. Tällöin verkkopalveluista tulee SOA: n toiminnallisuusyksiköitä, jotka ovat käytettävissä Internetissä. Verkkopalveluja voi käyttää kuka tahansa ilman huolta niiden kehittämisessä käytetyistä alustoista tai ohjelmointikielistä. SOA on rakennettu suoraan palvelukeskeisyyden periaatteelle, joka puhuu yksinkertaisella käyttöliittymällä varustetuista palveluista, joihin käyttäjät pääsevät itsenäisesti huolimatta palvelun todellisesta alustan toteutuksesta.
Mikä on ESB?
ESB (Enterprise Service Bus) on infrastruktuuriohjelmisto, joka tarjoaa ohjelmistoarkkitehtuurirakenteen peruspalveluiden tuottamiseksi monimutkaisille arkkitehtuureille. Mutta siitä, kutsutaanko ESB: tä arkkitehtuurityyliksi vai ohjelmistotuotteeksi vai edes tuoteryhmäksi, on paljon argumentteja. Se tarjoaa palveluja tapahtumavetoisen ja standardipohjaisen viestintäkoneen kautta (joka on itse asiassa palveluväylä). Tämän viestintäkoneen päälle on järjestetty abstraktiokerros, jotta arkkitehdit voivat hyödyntää väylän tarjoamia palveluja kirjoittamatta mitään todellista koodia. ESB toteutetaan yleensä standardeihin perustuvien väliohjelmistoinfrastruktuurien kautta.
Termin”väylä” käyttö ESB: ssä johtuu siitä, että ESB tarjoaa hyvin samanlaisen toiminnan kuin fyysinen tietoväylä, mutta paljon korkeammalla abstraktiotasolla. Yksi ESB: n tärkeimmistä eduista on kyky vähentää yhteyspisteiden määrää. joten muutoksiin sopeutuminen on paljon helpompaa. ESB: tä voidaan käyttää alustana, jolla SOA toteutetaan. ESB voi tuoda SOA: lle muunnoksen / reitityksen (virtaukseen liittyvät) käsitteet. Lisäksi todistamalla päätetapahtumien abstraktion (SOA: ssa) ESB edistää löyhää kytkentää palveluiden välillä.
Mitä eroa on SOA: lla ja ESB: llä?
SOA: n ja ESB: n välillä on joitain keskeisiä eroja. SOA on arkkitehtoninen malli löyhästi kytkettyjen palvelupohjaisten sovellusten toteuttamiseen. ESB on infrastruktuuriohjelmisto, joka auttaa kehittäjiä kehittämään palveluja ja kommunikoimaan palveluiden välillä sopivien sovellusliittymien kautta. ESB: tä voidaan käyttää alustana, jolla SOA toteutetaan. ESB on vain väline, jonka kautta palvelut kulkevat. ESB tarjoaa tilat palvelujen kokoonpanolle ja käyttöönotolle, jotka puolestaan toteuttavat SOA: n.