supersonic insights

MACH is de toekomst

Hoe MACH-architectuur je e-commerce-infrastructuur een boost kan geven

Het is makkelijk om door de bomen het bos niet meer te zien in de wereld van MACH. Dit architectuurprincipe lijkt op het eerste gezicht misschien complex, maar dat valt eigenlijk mee.

Supersonic helpt je graag om deze toekomstgerichte IT-architectuur begrijpelijk te maken en toepasbaar voor jouw bedrijf. Jonas De Bondt, technisch architect bij supersonic, gebruikt heldere vergelijkingen om uit te leggen waarom de overstap van monolithische platforms naar MACH-architectuur essentieel is. En hoe MACH de weg vrijmaakt voor een wendbare en schaalbare e-commerce-infrastructuur.

Maak je klaar en vlieg mee door de wereld van MACH-architectuur!

Auteur
Jonas De Bondt, Technical Architect at supersonic

Jonas De Bondt

Publicatiedatum

21 mrt. 2023

Microservices

Losse koppelingen tussen componenten

Microservices zijn een reeks losjes gekoppelde diensten/toepassingen die allemaal hun eigen verantwoordelijkheid nemen. In plaats van één grote applicatie te bouwen die alle functies en integraties omvat, wordt deze opgesplitst in een reeks microservices. Elke microservice omvat specifieke functionaliteit en kan afzonderlijk van alle andere diensten worden beheerd. Over versiebeheer, implementaties, downtime, gebruik van resources, ...

Stel je voor dat je de in-flight entertainment schermen van je vliegtuig wilt updaten. Met een monolithische architectuur, zou het installeren van nieuwe schermen het hele vliegtuig moeten updaten, wat veel tijd en geld kost. Met MACH vervangt u alleen de schermen en laat u de rest van het vliegtuig intact en bruikbaar terwijl de experts de schermen vervangen.

Snel gebouwd, eenvoudig uitgerold

Microservices zorgen ervoor dat je veranderingen sneller en eenvoudiger kunt doorvoeren. In plaats van een volledige platformrelease hoef je enkel een lichte, afzonderlijke microservice te bouwen en uit te rollen. Denk bijvoorbeeld aan een update van een e-mailintegratie: de aanpassing verloopt vlot, zonder downtime. En zit er toch een bug in? Dan raakt enkel die ene microservice verstoord, de rest van je architectuur blijft gewoon draaien.

Bij een monolithische opzet ligt dat anders: een bug kan het hele platform platleggen. Vergelijk het met een vliegtuig: als één motor uitvalt in een monolithisch systeem, stort het hele toestel neer. In een MACH-architectuur wordt enkel de kapotte motor losgekoppeld, terwijl de rest van het vliegtuig probleemloos blijft vliegen. Met andere woorden: microservices zorgen voor een flexibelere én betrouwbaardere infrastructuur.

Kies de technologie die bij je past

Een van de grootste voordelen van microservices is de vrijheid om per use case de meest geschikte en vaak nieuwste technologieën te gebruiken. In een monolithische architectuur ben je gebonden aan een alles-in-één oplossing die meestal gebaseerd is op oudere technologieën die moeilijk te vernieuwen zijn. Tegen de tijd dat je een upgrade hebt doorgevoerd ben je alweer ingehaald door de realiteit. Microservices lossen dat probleem op doordat je elk onderdeel apart kunt beheren en vernieuwen zonder impact op de rest van je omgeving. Bovendien zijn ze veel lichter en daardoor makkelijker te onderhouden.

Vergelijk het met de tv-schermpjes in een vliegtuig. In een monolithisch systeem ben je verplicht om het scherm te gebruiken dat de vliegtuigbouwer aanbiedt. Je hebt weinig keuze en nauwelijks mogelijkheden tot personalisatie. Met MACH kies je zelf uit verschillende fabrikanten en installeer je het scherm dat het best past bij jouw noden. Zo bouw je een flexibelere architectuur en bied je een betere gebruikerservaring.

Schaalbaarheid

Met microservices ben je beter voorbereid op piekbelasting. Tijdens drukke momenten zoals Black Friday raken bepaalde onderdelen van je platform sneller overbelast. In plaats van je volledige platform op te schalen, zoals bij een monolithische aanpak, kun je met MACH enkel opschalen wat nodig is. Geen downtime, geen verspilde resources.

Vergelijk het met reizen per vliegtuig. In een monolithische architectuur moet je het hele vliegtuig huren, ook al heb je maar een paar stoelen nodig. Met MACH koop je gewoon tickets voor het aantal zitplaatsen dat je echt nodig hebt. Efficiënter, flexibeler en klaar voor groei.

API-first

Application Programming Interface

API’s zijn geëvolueerd van een extra laagje bovenop een backend tot het kloppend hart van je digitale architectuur. Dankzij deze benadering wordt data sneller en lichter verwerkt, omdat de UI volledig losstaat van de backend.

Het resultaat? Meer flexibiliteit én consistentie. API’s maken het mogelijk om dezelfde functionaliteiten aan te bieden aan verschillende systemen, zoals de webshop frontend, native apps, kassasystemen of externe marketingtools. Dankzij scopes bepaal je precies welke applicatie toegang krijgt tot welke functies.

Een goeie vergelijking? In de luchtvaart zijn gestandaardiseerde communicatieprotocollen essentieel om elke vlucht veilig en consistent te laten verlopen, los van het type vliegtuig of de piloot. Net zoals vliegtuigen gebouwd worden rond die standaarden, werk je met MACH vanaf de basis API-first — zodat je hele architectuur stabiel, veilig en schaalbaar blijft.

Cloud-native

Hosting infrastructuur

Cloudproviders zoals AWS, Google en Azure zijn de voorbije tien jaar enorm gegroeid en bieden ongeëvenaarde mogelijkheden, flexibiliteit en schaalbaarheid voor hostinginfrastructuur. Binnen de MACH-architectuur zijn diensten en functionaliteiten volledig cloudgebaseerd, waardoor je maximaal gebruik kan maken van de kracht van de cloud.

Cloud-native microservices maken beheer en opschaling eenvoudig en efficiënt. Resources worden voor jou beheerd en features zoals messaging-, event-systemen en API’s zijn direct beschikbaar. De mogelijkheden zijn vrijwel onbeperkt.

Vergelijk het met het uitbesteden van onderhoud aan een vliegtuig, zoals het vervangen van olie of remmen, aan gespecialiseerde bedrijven in plaats van het zelf te doen. Zo kan jij je focussen op je core business.

Headless

De backend ontkoppelen

De front-end en back-end van een e-commercewebsite gebruiken verschillende technologieën en aparte setups. Dus waarom die twee combineren in één codebase en platform? Precies! Door de backend te ontkoppelen met een headless aanpak, kan die onafhankelijk draaien met eigen versies, deploys en resourcegebruik.

De front-end communiceert via API’s met de backend, wat client-side werking mogelijk maakt en zo de websiteprestaties verbetert. Bovendien opent dit de deur naar omnichannel mogelijkheden dankzij gestandaardiseerde communicatie.

Een headless backend betekent dat elke applicatie via dezelfde standaardcommunicatie met de backend kan verbinden.

Net zoals de motoren en bedrading van een vliegtuig onzichtbaar maar essentieel zijn, draait het bij je backend vooral om goede werking, niet om hoe het eruitziet.

Conclusie

Flexibel, schaalbaar en klaar voor de toekomst

MACH-architectuur is de toekomst van IT-architectuur. Bedrijven willen een flexibele, schaalbare en toekomstbestendige opzet, en dat biedt MACH in overvloed. Wie denkt dat MACH te complex is, heeft simpelweg nog niet de juiste implementatiepartner gevonden. Supersonic begeleidt en ondersteunt je in het snel veranderende digitale commerce landschap, zodat jij een geavanceerd en toekomstgericht digital commerce platform kan neerzetten.

Flexibiliteit

MACH-architectuur biedt een flexibele oplossing waarbij je eenvoudig onderdelen kunt wisselen om telkens de beste oplossing voor jouw behoeften te kiezen. In tegenstelling tot monolithische platformen, waarbij je vaak het hele platform moet vervangen of extra externe tools moet toevoegen, kan je bij MACH per functie de optimale tool selecteren.

Stel je voor: je bent niet tevreden over de zetels in je vliegtuig en moet daarom het volledige toestel vervangen. Of je moet nieuwe zetels toevoegen, maar de oude blijven meebetalen. Klinkt absurd, toch? Dat is precies hoe een monolithisch platform werkt. MACH maakt het eenvoudiger en efficiënter.

Nieuw talent aantrekken

Het aantrekken van nieuw talent voor monolithische platformen is vaak moeilijk omdat ze gebaseerd zijn op verouderde en complexe technologieën die veel expertise vereisen. MACH-architecturen bieden daarentegen een vlotter onboardingproces voor nieuwe ontwikkelaars doordat ze moderne, goed gedocumenteerde technologieën gebruiken. Dit maakt het platform aantrekkelijker voor developers die willen werken met de nieuwste webtechnologieën. Bovendien zijn aanpassingen aan specifieke onderdelen, zoals een microservice voor e-mailintegratie, veel eenvoudiger en sneller dankzij de kleine codebase en het gebruik van gangbare technologieën.

Jack of all trades, master of none

Een monolithisch platform kun je omschrijven als een ‘jack of all trades, master of none’. Het biedt “alles”, maar blinkt nergens echt in uit. Met een MACH-architectuur kies je voor de beste oplossing per onderdeel.

Je laat ook niet één bedrijf je hele vliegtuig bouwen. Je wil niet dat dezelfde firma die voor het entertainmentsysteem zorgt, ook je motoren installeert. Voor elk onderdeel haal je een specialist in huis.

Recruiting new talent for monolith platforms can be challenging due to their reliance on outdated and complex technologies, which require significant expertise to implement. In contrast, MACH architectures offer a streamlined onboarding process for new developers by allowing the use of modern and well-documented technologies. This makes the platform more appealing to developers seeking to work with advanced web technologies. Additionally, making changes to specific aspects of the architecture, such as the email integration microservice, is much easier and quicker with MACH due to its small code base and use of widely adopted technologies.

Geïnteresseerd om te werken met de MACH stack?