Verschil tussen SOA en ESB
SOA vs ESB
SOA is een reeks architectonische concepten die worden gebruikt voor de ontwikkeling en integratie van diensten. Een dienst is een gepubliceerd pakket van functionaliteit die via het web wordt aangeboden. ESB is een stuk infrastructuursoftware die een software architectuurconstructie biedt voor het aanbieden van basisdiensten voor complexe architecturen. ESB kan gebruikt worden als platform waarop SOA gerealiseerd wordt.
Wat is SOA?
SOA (Service Oriented Architecture) is een reeks architectonische concepten die worden gebruikt voor de ontwikkeling en integratie van diensten. SOA behandelt gedistribueerde computers waarbij consumenten een reeks interoperabele diensten verbruiken. Meerdere consumenten kunnen een enkele dienst verbruiken en vice versa. Daarom wordt SOA vaak gebruikt om meerdere toepassingen te integreren die verschillende platformen gebruiken. Om SOA goed te kunnen functioneren, dienen de services losweg gekoppeld te zijn aan besturingssystemen en de technologieën van onderliggende applicaties. SOA-ontwikkelaars creëren diensten met behulp van eenheden van functionaliteit en maken ze beschikbaar via internet. Webdiensten kunnen worden gebruikt om SOA-architectuur uit te voeren. In dat geval worden webdiensten de units van functionaliteit van SOA toegankelijk via internet. Webdiensten kunnen door iedereen worden gebruikt zonder zich zorgen te maken over de platforms of de programmeertalen die gebruikt worden om ze te ontwikkelen. SOA is rechtstreeks gebouwd op het principe van service-orientatie, die praat over diensten met een eenvoudige interface die onafhankelijk door gebruikers kan worden geopend, zonder zich zorgen te maken over de daadwerkelijke implementatie van het platform.
Wat is ESB?
ESB (Enterprise Service Bus) is een stuk infrastructuursoftware dat een software architectuurconstructie biedt voor het aanbieden van basisdiensten voor complexe architecturen. Maar er is aanzienlijk argument over de vraag of ESB een architectonische stijl of een softwareproduct of zelfs een groep producten moet noemen. Het biedt de diensten via event-driven en standaarden gebaseerde motor voor messaging (dat is eigenlijk de service bus). Bovenop deze messaging engine wordt een laag abstractie verstrekt om architecten in staat te stellen de door de bus aangeboden voorzieningen te exploiteren, zonder een werkelijke code te schrijven. ESB wordt meestal geïmplementeerd door middel van standaard middleware infrastructuren.
Het gebruik van de term "bus" in ESB is te wijten aan het feit dat ESB een zeer vergelijkbare functie levert aan de fysieke computerbus, maar op een veel hoger niveau van abstractie. Een van de voornaamste voordelen van het hebben van een ESB is het vermogen om het aantal contactpunten te verminderen; Zo maakt de aanpassing aan de veranderingen veel gemakkelijker. ESB kan gebruikt worden als platform waarop SOA gerealiseerd wordt. De concepten transformatie / routing (flow related) kunnen door SOB naar SOA gebracht worden.Bovendien, door de abstractie voor eindpunten te bewijzen (in SOA), bevordert ESB losse koppeling tussen diensten.
Wat is het verschil tussen SOA en ESB?
Er zijn enkele belangrijke verschillen tussen SOA en ESB. SOA is een architectonisch model voor het implementeren van los gekoppelde service gebaseerde toepassingen. ESB is een stuk infrastructuursoftware die ontwikkelaars helpt bij het ontwikkelen van diensten en communiceren tussen diensten via geschikte API's. ESB kan gebruikt worden als platform waarop SOA gerealiseerd wordt. ESB is alleen het medium waarmee de diensten stromen. ESB biedt faciliteiten voor de samenstelling en implementatie van diensten, die op hun beurt de SOA implementeren.