Skip to main content
Parentix Blog

Parentix Blog

Search
Home
  
Parentix Blog > Posts > Onderzoek naar haalbaarheid Parentix Service Bus gestart  

There are no items in this list.
July 25
Onderzoek naar haalbaarheid Parentix Service Bus gestart

Afgelopen week was het eindelijk zo ver. We zijn gestart met het onderzoek naar de haalbaarheid van de Parentix Service Bus. Een grote en belangrijke stap in de verdere ontwikkeling van onze organisatie.

Leuk zal je misschien denken. Maar wat is dat, een Service Bus? En wat heb ik eraan?

Het Concept ‘Service Bus’

Een Service Bus (ook wel Enterprise Service Bus genoemd) is een architectuur waarin de communicatie tussen afnemers van ‘diensten’ en aanbieders van ‘diensten’ vereenvoudigd wordt.

image

In een traditionele architectuur communiceren afnemers en aanbieders direct met elkaar (linker schema). In een Service Bus architectuur weten de afnemers enkel welke ‘diensten’ beschikbaar zijn, maar niet waar deze zich bevinden. Een afnemer stuurt een bericht naar de Service Bus, waarna deze het bericht doorstuurt naar de betreffende aanbieder(s). Er is dus geen directe verbinding tussen de afnemers en aanbieders.

Waarom een Service Bus?

De operationele omgeving van Parentix is een complex geheel van servers, firewalls, domeinen, etc. Beveiliging speelt hierbij een grote rol. Niet iedereen mag en kan overal bij. Maar aan de andere kant wil je wel overal bij kunnen om bijvoorbeeld informatie uit een database te halen, of de grootte van klantfolders op een server te bepalen. Dit probleem is natuurlijk op te lossen door diverse poorten te openen in het netwerk, of door super-user accounts te gebruiken die overal bij kunnen. Echter komt dat de beveiliging niet ten goede. Ook de beheersbaarheid van de omgeving wordt er door een dergelijke keuze niet beter op. Het betekent extra administratie (welke account kan wat, welke poort is nu wel of niet open, etc.) en dus een risico op fouten en beveiligingsproblemen.

Een Service Bus biedt hierin een aantal oplossingen:

Beheersbaar
  • Op een centrale plaats worden alle instellingen en accounts beheerd.
  • Via de management interface kan op ieder moment de status bekeken worden van alle services.
  • Log informatie is op een centrale locatie beschikbaar.
  • Updaten van de software is centraal geregeld.

Veiligheid
  • De communicatie tussen de services van de Service Bus is beveiligd en gecodeerd .
  • De afnemers verzenden en ontvangen hun berichten gecodeerd.
  • Er is slechts één manier van communiceren op het netwerk.
Schaalbaar
  • Bij het groeien van de omgeving groeit de Service Bus automatisch mee. (Nieuwe server –> nieuwe aanbieder)
  • Een ‘dienst’ kan door meerdere aanbieders uitgevoerd worden
  • Meerdere berichten worden parallel uitgevoerd, waardoor optimaal gebruik gemaakt wordt van de machine capaciteit
Herbruikbaar
  • Een ‘dienst’ bevat heel specifieke functionaliteit (aanmaken gebruiker, ophalen databases, etc.) waardoor deze makkelijk hergebruikt kan worden in een andere oplossing.

De geplande Parentix implementatie

De Parentix Service Bus zal bestaan uit een aantal onderdelen die nauw met elkaar samenwerken.

image

Applicatie services

Het hart van de Service Bus is de Host service. Deze service zorgt voor het routeren van de berichten naar de aanbieders van ‘diensten’. Hij ‘weet’ welk bericht naar welke aanbieder is gestuurd en zorgt ervoor dat het resultaat/antwoord aan de juiste afnemer wordt teruggegeven.

De aanbieders zijn Agent services. Op iedere server is zo’n Agent aanwezig. Deze Agents worden een management interface centraal geconfigureerd (welke ‘diensten’ kan/mag hij aanbieden, etc.).

Bij iedere Agent is vervolgens ook  een Updater services aanwezig. Deze Updater service controleert regelmatig of er een nieuwe versie van de software beschikbaar is. Vanaf een centrale plaats kan op deze manier snel een nieuwe versie van de Service Bus worden uitgerold naar de servers.

Enterprise services

Naast deze specifieke applicatie services bestaat het Service Bus platform ook uit een aantal gemeenschappelijke Enterprise Services. Deze services worden ook door andere applicaties gebruikt en bevatten de volgende functies:

  • Centrale configuratie
  • Centrale logging
  • Uniforme data toegang en verwerking
  • Centraal beheer
Planning

Op het moment van schrijven van deze post is gestart met het onderzoek naar de algoritmes om dit voor elkaar te krijgen. Het Plan van Aanpak is intussen afgerond.

En hoe nu verder…

De bedoeling is om verschillende algoritmes te ontwikkelingen en hiermee tot een oplossingsrichting en proof of concept te komen. Indien de proof of concept slaagt zullen we een prototype bouwen.

Na succesvolle afronding van voorgaande is de bedoeling dat we geleidelijk alle applicaties gaan aansluiten op de Service Bus. Per applicatie zal bepaald worden welke functionaliteit als ‘dienst’ beschikbaar wordt gemaakt, waarna vervolgens de applicatie wordt aangepast zodat deze de nieuwe ‘dienst' via de Service Bus zal gaan aanroepen.

Nieuwe functionaliteit wordt direct als ‘dienst’ en afnemer gerealiseerd, zodat we snel het aantal ‘diensten’ die beschikbaar zijn uitbreiden en gaan hergebruiken.

Met deze richting bereid Parentix zich verder voor op de toekomst. Nieuwe wensen kunnen snel worden gerealiseerd. Beheer van de omgeving wordt overzichtelijker. En nieuwe technische ontwikkelingen kunnen ‘makkelijk’ worden toegevoegd aan ons platform.

Comments

There are no comments for this post.