Migratie van monolithische naar microservices: 25% snellere respons

Innowise migreerde met succes het platform van de klant van een monolithische architectuur naar microservices, waarbij zowel backend als frontend werden verbeterd voor betere schaalbaarheid en prestaties.

Klant

Industrie
Gezondheidszorg
Regio
US
Klant sinds
2023

Onze klant is een vooraanstaande personeelsdienst voor de gezondheidszorg in de VS die zorgaanbieders helpt met de stijgende personeelsbehoeften en het aanwervingsproces vereenvoudigt. Aan de andere kant kunnen werkzoekenden functies kiezen die perfect passen bij hun schema's en voorkeuren. Bij onze klant draait alles om het koppelen van de juiste mensen aan de juiste banen.

Gedetailleerde informatie over de klant kan niet openbaar worden gemaakt krachtens de bepalingen van de NDA.

Uitdaging

De stijgende vraag bijhouden zonder de bank te breken

Terwijl het bedrijf van de klant snel uitbreidde, werden ze geconfronteerd met steeds grotere technische en operationele uitdagingen die hun vooruitgang dreigden te vertragen. Hun eens zo betrouwbare monolithische systeem had moeite om te voldoen aan de toenemende eisen van zorginstellingen en medisch personeel. Als gevolg daarvan kregen ze te maken met prestatieproblemen, vertraagde uitrol van functies en operationele inefficiënties.

De klant had een systeemrevisie nodig om te kunnen blijven groeien, maar wilde niet teveel personeel in dienst nemen en extra kosten maken. Ze waren op zoek naar een IT-outsourcing partner die flexibel kon schalen op basis van specifieke taken en deadlines en tegelijkertijd de kosten in de hand kon houden. Toen kwam Innowise met onze deskundige inzichten om hen weer op de rails te krijgen.

Oplossing

Overschakelen op microservices voor verbeterde schaalbaarheid en snelheid

Innowise bouwde een schaalbare microservices-architectuur voor de klant, zodat hun platform gemakkelijk kan groeien. We hebben zowel backend als frontend geüpdatet, zodat alles soepel loopt, snel wordt geïmplementeerd en gebruikers een veel betere ervaring hebben. Dankzij geautomatiseerd testen en continue levering hielden onze experts alles betrouwbaar en draaiend zoals het hoort.

Diepgaande analyse en planning

Innowise begon met een grondige audit van het monolithische systeem van de klant, waarbij we de componenten in kaart brachten en de knelpunten identificeerden. We werkten nauw samen met de teams van de klant om cruciale bedrijfsfuncties te beoordelen en ervoor te zorgen dat alle behoeften van belanghebbenden in de planning aan bod kwamen.

We identificeerden de gebieden die het meest zouden profiteren van deze verschuiving en maakten een gedetailleerde routekaart voor de migratie. Ons team concentreerde zich ook op risicobeperkende strategieën, waarbij we ons voorbereidden op zaken als problemen met de gegevensmigratie en er tegelijkertijd voor zorgden dat het bedrijf tijdens de overgang soepel bleef draaien.

Migratie van monolith naar microservices

Na een gedegen planning begon ons team met een soepele migratie van een monolithisch systeem naar microservices. We splitsten de belangrijkste onderdelen van het platform op in onafhankelijke microservices en lieten ze elk op zich schalen. Deze modulaire opzet loste de prestatieknelpunten op, zodat services veranderingen in de vraag aankonden zonder het hele platform te vertragen.

We hebben ook servicespecifieke databases opgezet om de gegevensstroom te verbeteren en de afhankelijkheden te verminderen die vertragingen veroorzaakten. Met Kubernetes en Docker op zijn plaats automatiseerde ons team de implementatie en het schalen van elke microservice. Op deze manier kan het platform pieken in het gebruik aan zonder enige handmatige inspanning.

Service-orkestratie en communicatie

We zetten een microservice orkestratielaag op met Apache Kafka voor berichtgestuurde communicatie. Hierdoor bleven de services losjes met elkaar verbonden, zodat ze onafhankelijk van elkaar konden schalen. Door asynchrone communicatie te gebruiken, verminderden onze experts de latentie en werd het systeem responsiever.

Frontend refactoring

Tijdens het upgraden backend gaven frontend de aandacht die het verdiende. Ons team vernieuwde de UI door deze op te splitsen in modulaire componenten met Angular, waardoor de ontwikkeling werd versneld en er probleemloos nieuwe functies konden worden toegevoegd. Onze specialisten verfijnden ook de verbinding frontend backend met behulp van aangepaste CRUD API's, waardoor realtime updates en minimale latentie worden gegarandeerd.

Integratie testen

Om zowel de legacy code als de nieuwe microservices stabiel te houden, hebben we een degelijke set integratietests met JUnit samengesteld. We hebben deze tests gericht op belangrijke interacties zoals gegevenssynchronisatie en gebruikersauthenticatie om fouten te voorkomen bij het uitrollen van nieuwe functies.

Door binnen onze bestaande testomgeving te werken, konden we consistente tests uitvoeren voor alle belangrijke use cases. Bij elke test werd grondig onderzocht hoe de nieuwe en oude componenten op elkaar inwerkten, waardoor migratierisico's werden beperkt en de stabiliteit van het platform werd vergroot.

Technologieën

Frontend

Angular, TypeScript

Backend

Java 11

Containers

Docker, Docker Compose, Kubernetes

VCS

VCS: Git, BitBucket

Testen

JUnit

Cloud

Azure

Proces

Voor dit project volgden we een Scrum-methodologie die was aangepast aan de behoeften van de klant, met gerichte sprints van twee weken om de voortgang op schema te houden. Ons team gebruikte Jira om elke taak te monitoren, zodat we volledig inzicht hadden in de mijlpalen en deliverables van het project. Dagelijkse coördinatie via Slack hield het team met elkaar in contact, zodat we problemen snel konden aanpakken.

Onze projectmanager hield wekelijkse Zoom-vergaderingen met de klant om gedetailleerde updates over de ontwikkeling te delen, eventuele uitdagingen te bespreken en feedback te verzamelen om iedereen op één lijn te houden. Deze beproefde aanpak minimaliseerde de uitvaltijd en zorgde voor een gestage voortgang gedurende het project.

Team

1
Project Manager
1
Software Architect
3
Java-ontwikkelaars
2
Angular Ontwikkelaars
2
DevOps Ingenieurs
2
QA Engineers
1
Bedrijfs-analist

Resultaten

30% soepelere werking en 25% snellere reactietijden

Ons team heeft het platform van de klant vernieuwd, waardoor de operationele efficiëntie met 30% is toegenomen. Het systeem verwerkt nu meer aanvragen zonder te vertragen. Door over te schakelen op een microservices-architectuur daalden de responstijden met 25%, zodat zorgverleners sneller en betrouwbaarder verbinding konden maken met beschikbaar medisch personeel.

Het automatiseren van de implementatie en het schalen verminderde handmatige inspanningen en operationele kosten, waardoor de klant pieken in de vraag kon verwerken zonder extra personeel nodig te hebben of de infrastructuurkosten te verhogen.

Bovendien geautomatiseerd testen het aantal systeemstoringen met 35% verminderd, waardoor het platform veel stabieler is geworden. Nieuwe functies konden nu soepel worden uitgerold zonder de lopende services te verstoren.

Duur van het project
  • Oktober 2023 - Mei 2024

25%

snellere reactietijden

30%

verhoging van de operationele efficiëntie

Contacteer ons

Boek een gesprek of vul het onderstaande formulier in en we nemen contact met je op zodra we je aanvraag hebben verwerkt.

    Voeg projectgegevens alsjeblieft, duur, technische stapel, IT-professionals nodig en andere relevante informatie toe
    Neem een spraakbericht over uw
    project op om het ons beter te helpen begrijpen
    Voeg indien nodig aanvullende documenten bij
    Bestand uploaden

    Je kunt maximaal 1 bestand van 2MB bijvoegen. Geldige bestanden: pdf, jpg, jpeg, png

    Wij wijzen u erop dat wanneer u op de verzendknop klikt, Innowise uw persoonsgegevens zal verwerken in overeenstemming met onze Privacybeleid om u van de juiste informatie te voorzien. Door een telefoonnummer op te geven en dit formulier te verzenden, geeft u toestemming om per sms te worden gecontacteerd. Er kunnen bericht- en gegevenstarieven van toepassing zijn. U kunt op STOP antwoorden om verdere berichten te weigeren. Antwoord Help voor meer informatie.

    Wat gebeurt er nu?

    1

    Na ontvangst en verwerking van uw aanvraag, nemen wij binnenkort contact met u op om uw projectbehoeften in detail te beschrijven en een NDA te ondertekenen om de vertrouwelijkheid van informatie te garanderen.

    2

    Na het bestuderen van de vereisten, stellen onze analisten en ontwikkelaars een projectvoorstel met de omvang van de werkzaamheden, teamgrootte, tijd en kosten schattingen.

    3

    Wij regelen een ontmoeting met u om het aanbod te bespreken en tot een overeenkomst.

    4

    We tekenen een contract en beginnen zo snel mogelijk aan uw project te werken.

    Спасибо!

    Cобщение отправлено.
    Мы обработаем ваш запрос и свяжемся с вами в кратчайшие сроки.

    Bedankt.

    Uw bericht is verzonden.
    Wij verwerken uw aanvraag en nemen zo spoedig mogelijk contact met u op.

    Bedankt.

    Uw bericht is verzonden. 

    We verwerken je aanvraag en nemen zo snel mogelijk contact met je op.

    pijl