Forskellen mellem SOA og ESB

SOA vs ESB

SOA er et sæt arkitektoniske koncepter, der bruges til udvikling og integration af tjenester. En tjeneste er en publiceret pakke med funktionalitet, der tilbydes over nettet. ESB er et stykke infrastruktursoftware, der leverer en softwarearkitekturkonstruktion til levering af basale tjenester til komplekse arkitekturer. ESB kan bruges som en platform, som SOA realiseres på.

Hvad er SOA?

SOA (Serviceorienteret arkitektur) er et sæt arkitektoniske koncepter, der bruges til udvikling og integration af tjenester. SOA beskæftiger sig med distribueret computing, hvor forbrugere forbruger et sæt interoperable tjenester. Flere forbrugere kan forbruge en enkelt service og omvendt. Derfor bruges SOA ofte til at integrere flere applikationer, der bruger forskellige platforme. For at SOA skal fungere korrekt, skal tjenester kobles løst med operativsystemer og teknologierne i underliggende applikationer. SOA-udviklere opretter tjenester, der bruger funktionsenheder og gør dem tilgængelige over internettet. Webtjenester kan bruges til at implementere SOA-arkitektur. I dette tilfælde bliver webtjenester SOA's funktionalitetsenheder tilgængelige via internettet. Webtjenester kan bruges af nogen uden at være bekymrede over platforme eller programmeringssprog, der bruges til at udvikle dem. SOA er direkte bygget på princippet om serviceorientering, der taler om tjenester med en simpel grænseflade, som brugere kan få adgang til uafhængigt af, uden at bekymre sig om den faktiske platformimplementering af tjenesten.

Hvad er ESB?

ESB (Enterprise Service Bus) er et stykke infrastruktursoftware, der leverer en softwarearkitekturkonstruktion til levering af basale tjenester til komplekse arkitekturer. Men der er betydelige argumenter om, hvorvidt man skal kalde ESB en arkitektonisk stil eller et softwareprodukt eller endda en gruppe af produkter. Det leverer tjenester gennem begivenhedsdrevet og standardbaseret motor til meddelelser (som faktisk er servicebussen). Oven på denne messaging-motor er der et lag med abstraktion, der giver arkitekter mulighed for at udnytte de faciliteter, bussen tilbyder, uden at skrive nogen egentlig kode. ESB implementeres normalt gennem standardbaseret mellemvareafrastruktur.

Brugen af ​​udtrykket "bus" i ESB skyldes, at ESB giver en meget lignende funktion som den fysiske computerbuss, men på et meget højere niveau af abstraktion. En af de største fordele ved at have en ESB er evnen til at reducere antallet af kontaktpersoner; hvilket gør tilpasningen til ændringerne meget lettere. ESB kan bruges som en platform, som SOA realiseres på. Begreberne transformation / routing (flowrelateret) kan bringes til SOA af ESB. Ved at bevise abstraktionen for slutpunkter (i SOA) fremmer ESB også løs kobling mellem tjenester.

Hvad er forskellen mellem SOA og ESB?

Der er nogle vigtige forskelle mellem SOA og ESB. SOA er en arkitektonisk model til implementering af løst koblede servicebaserede applikationer. ESB er et stykke infrastruktursoftware, der hjælper udviklere med at udvikle tjenester og kommunikere mellem tjenester gennem passende API'er. ESB kan bruges som en platform, som SOA realiseres på. ESB er kun det medium, gennem hvilket tjenesterne flyder. ESB leverer faciliteter til sammensætning og distribution af tjenester, der igen implementerer SOA.