Artikels

Data migreren naar een microservice IT-architectuur

Dagelijks werken we met verschillende soorten applicaties die onze data toont, verwerkt en opslaat. De verschillende applicaties bewaren deze data in hun eigen databank. Naarmate de applicatie in grootte groeit, zal de database en bijgevolg de complexiteit meegroeien. Deze soort applicaties met 1 databank worden dan ook meestal ‘monolieten’ genoemd.

Hoe kunnen we nu deze bestaande monolithische applicaties herwerken? Kan een andere IT-architectuur zoals ‘microservices’ met kleine en onafhankelijke databases de complexiteit verkleinen? Welke voor- maar ook nadelen zou dit met zich meebrengen? Het uitzoeken van dit vraagstuk was een belangrijk punt voor onze stagiair Prem, die een grote monolithische applicaties wou vernieuwen.

Monolithische IT-architectuur

Prem onderzocht eerst grondig de huidige monolithische architectuur van een bestaand project. Zoals aangeven worden applicaties meestal als ‘monoliet’ opgebouwd met 1 databank omdat dit enkele voordelen met zich meebrengt:

  • Gemakkelijker schaalbaar.
  • Kleinere omvang door opsplitsing maakt het makkelijker om applicatie te beheren, onderhouden en aanpassingen te doen.
  • Elke service kan ontwikkeld worden met verschillende technologieën die het beste voldoen aan de noden van het project.

De nadelen:

  • Complexer dan de monolithische architectuur.
  • Efficiënte communicatie tussen verschillende services kan een uitdaging zijn.
  • De flexibiliteit van technologiekeuze zorgt voor een constante waakzaamheid om te vermijden dat er een chaos aan verschillende technologieën ontstaat.
Schematische voorstelling van een monolitische architectuur met 1 database
Monolithische architectuur

Microservice IT-architectuur

Parallel met Prem zijn onderzoek volgden zijn collega’s van het development team een 2-daagse opleiding rond Azure Microservices. Een IT-architectuur waarbij opdeling van functionaliteiten, ‘services’, centraal staan zodat deze hun eigen data beheren en op zichzelf kunnen evolueren volgens de eisen van de klant. De voordelen hiervan zijn:

  • Gemakkelijker schaalbaar.
  • Kleinere omvang door opsplitsing maakt het makkelijker om applicatie te beheren, onderhouden en aanpassingen te doen.
  • Elke service kan ontwikkeld worden met verschillende technologieën die het beste voldoen aan de noden van het project.

Nadelen van microservices:

  • Complexer dan de monolithische architectuur.
  • Efficiënte communicatie tussen verschillende services kan een uitdaging zijn.
  • De flexibiliteit van technologiekeuze zorgt voor een constante waakzaamheid om te vermijden dat er een chaos aan verschillende technologieën ontstaat.
Microservice IT-architectuur

Data migreren naar microservices

Eens de IT-architectuur duidelijk was, stond Prem voor een nieuwe uitdaging: Hoe gaan we nu alle bestaande en gestructureerde data van een monolithische architectuur naar een microservice architectuur migreren?

Al snel merkte hij op dat de gestructureerde data niet noodzakelijk in een gestructureerde database tot zijn recht kwam in een microservice omgeving. Zo kwam hij uit bij ‘niet-gestructureerde databases’ in Cassandra uit en slaagde erin om de monoliet data erin te migreren. Vervolgens kon elke microservice naar zijn eigen database connecteren.

Stage-ervaring

“Tijdens mijn stage leerde ik ontzettend veel bij over de monolithische en microservice IT-architecturen. Daarnaast leerde ik databases beter begrijpen en hoe je deze migreert naar een andere IT-architectuur. De flexibiliteit van een hybride werkplek, de fijne collega’s met een goede ondersteuning en de spontane afterwork activiteiten, gaan mij zeker bij blijven.”

Bedankt Prem voor je enthousiaste inzet en dit fantastische project! Wij wensen je nog heel veel succes!

Ook benieuwd naar een stage bij Userfull? Neem een kijkje tussen onze stages en ga de uitdaging tegemoet!


Onderstaande categorieën behoren tot dit artikel, wil je er meer over weten? Klik er dan op door.

, , , ,
Wit_logo_userfull_footer

Scherpenhoek 91
2850 Boom
BTW BE 0439.828.286

Tel: 02 282 08 08
E-mail: info@userfull.be

Nieuwsbrief

Schrijf je hier in voor meer nieuws

Scroll naar boven