Enterprise Service Bus (ESB)


Een Enterprise Service Bus? Wat is dat dan? Met een Enterprise Service Bus kun je je interne en externe applicaties naadloos op elkaar laten aansluiten. Wil je je webshop koppelen aan je ERP-systeem? Of interne applicaties integreren? Of cloud applicaties koppelen? Het kan allemaal met een ESB.

Zodra je meerdere systemen binnen je applicatielandschap met elkaar wilt laten communiceren, zijn er enkele mogelijkheden: je kunt deze direct aan elkaar koppelen of je kunt de communicatie laten verlopen via een gespecialiseerde applicatie: een Enterprise Service Bus. De realisatie van een dergelijke architectuur is één van de specialismen van We/Provide.

In plaats van meerdere koppelingen tussen applicaties wordt er per applicatie slechts één koppeling met de ESB gerealiseerd. Hierdoor wordt het applicatielandschap stukken vereenvoudigd en is de communicatie tussen de applicaties te monitoren. De ESB-technologie maakt het mogelijk om tussen applicaties berichten uit te wisselen, berichten te routeren, te transformeren en te combineren. Alleen maar voordelen dus!

Diverse producten

Er zijn diverse open source producten beschikbaar, elk met hun eigen karakter, waarmee applicatie-integratie gerealiseerd kan worden. Bekende open source ESB’s zijn bijvoorbeeld JBoss Fuse en Niklas. We/Provide verzorgt applicatie-integratie met behulp van deze open source producten waarbij afhankelijk van de vraag het beste product wordt ingezet.

Niklas

Het Niklas Integration Platform heeft een sterke focus op snelle gegevensverwerking, schaalbaarheid en ‘supportability’. Niklas ondersteunt transformaties tussen verschillende soorten gegevens en gegevensbronnen waarbij datastromen snel en eenvoudig opgezet kunnen worden, ongeacht het data-formaat of de te gebruiken communicatieprotocollen.

Niklas is een zeer veelzijdig platform. Afhankelijk van de eisen kan het worden geconfigureerd om te werken als een ‘single server’ toepassing of als een multi-server gedistribueerde omgeving. De functionaliteit van Niklas kan worden verdeeld over meerdere instances en op elke instance kan een aantal specifieke processen (de zogenaamde ‘engines’) worden geconfigureerd. Het is mogelijk om alle processen of een deel van de Niklas-processen over één of meer instances te verdelen wat een zeer flexibele aanpak mogelijk maakt.

Voor data transformaties (mappings) kan Niklas elk mapping tool gebruiken mits deze tool in staat is om ofwel Java of XSLT-code te genereren. Als gevolg hiervan is er geen ‘vendor lock-in’ in de richting van een eigen mapping tool, iets wat voor veel organisaties een belangrijk punt is.