Forskjellen mellom SOA og ESB

Anonim

SOA vs ESB

SOA er et sett av arkitektoniske begreper som brukes til utvikling og integrering av tjenester. En tjeneste er en publisert pakke med funksjonalitet som tilbys over nettet. ESB er et stykke infrastruktur programvare som gir en programvare arkitektur konstruksjon for å tilby grunnleggende tjenester for komplekse arkitekturer. ESB kan brukes som en plattform hvor SOA er realisert.

Hva er SOA?

SOA (Service-orientert arkitektur) er et sett av arkitektoniske begreper som brukes til utvikling og integrering av tjenester. SOA omhandler distribuert databehandling der forbrukerne bruker et sett av interoperable tjenester. Flere forbrukere kan forbruke en enkelt tjeneste og omvendt. Derfor er SOA ofte brukt til å integrere flere applikasjoner som bruker forskjellige plattformer. For at SOA skal kunne operere, bør tjenestene være løst forbundet med operativsystemer og teknologiene til underliggende applikasjoner. SOA-utviklere lager tjenester som bruker enheter av funksjonalitet, og gjør dem tilgjengelige over internett. Webtjenester kan brukes til å implementere SOA-arkitektur. I så fall blir webtjenester enhetene med funksjonalitet til SOA tilgjengelig over internett. Webtjenester kan brukes av noen uten å være bekymret for plattformene eller programmeringsspråkene som brukes til å utvikle dem. SOA bygger direkte på prinsippet om serviceorientering, som snakker om tjenester med enkelt grensesnitt som kan nås uavhengig av brukerne, uten å bekymre seg for den faktiske plattformimplementeringen av tjenesten.

Hva er ESB?

ESB (Enterprise Service Bus) er et stykke infrastrukturprogramvare som gir en programvarearkitekturkonstruksjon for å tilby grunnleggende tjenester for komplekse arkitekturer. Men det er betydelig argument om å ringe til ESB en arkitektonisk stil eller et programvareprodukt eller til og med en gruppe produkter. Det gir tjenestene gjennom hendelsesdrevet og standardbasert motor for meldingstjenester (som faktisk er tjenestebussen). På toppen av denne meldingsmotoren er det laget et abstraksjonslag for å tillate arkitekter å utnytte fasilitetene som tilbys av bussen, uten å skrive noen egentlig kode. ESB implementeres vanligvis gjennom standardbaserte mellomvareinfrastrukturer.

Bruken av begrepet "buss" i ESB skyldes at ESB gir en meget lignende funksjon til den fysiske databussen, men på et mye høyere nivå av abstraksjon. En av hovedfordelene ved å ha en ESB er evnen til å redusere antall kontaktpunkter; Det gjør det lettere å tilpasse seg endringene. ESB kan brukes som en plattform hvor SOA er realisert. Begrepene transformasjon / ruting (flowrelatert) kan hentes til SOA av ESB.Videre, ved å bevise abstraksjonen for endepunkter (i SOA), fremmer ESB løs kobling mellom tjenester.

Hva er forskjellen mellom SOA og ESB?

Det er noen viktige forskjeller mellom SOA og ESB. SOA er en arkitektonisk modell for implementering av løst koblede servicebaserte applikasjoner. ESB er et stykke infrastruktur programvare som hjelper utviklere til å utvikle tjenester, og kommunisere mellom tjenester gjennom egnede APIer. ESB kan brukes som en plattform hvor SOA er realisert. ESB er bare det medium som tjenestene flyter til. ESB tilbyr anlegg for sammensetning og distribusjon av tjenester, som i sin tur implementerer SOA.