Alle soorten tijdelijke email.Eén platform.

07/12/2024

250.000 e-mails per dag: uitdagingen en oplossingen

250.000 mails per dag: Uitdagingen & oplossingen

Onze twee jaar oude herlancering van Müllmail loopt eigenlijk perfect in vergelijking met de oude versie - op één probleem na: de belasting van de infrastructuur.

Müllmail.com draait al sinds het begin op een virtuele server (VPS), met bijna jaarlijks grotere prestaties en middelen. De vorige server had 16 cores, 64 GB RAM en meerdere terabytes aan opslag. Dat zou toch genoeg moeten zijn - dachten we. Maar helaas: fout gedacht. Een constante CPU-belasting van 80 tot 90%, met pieken van 100%, was de norm.

De oorzaak? Een combinatie van database en mailserver, waarbij zo’n 90% van de belasting van de database kwam. Gevolg: onze mailserver liep soms vast en e-mails kwamen pas minuten tot wel een half uur later aan. Suboptimaal is zacht uitgedrukt - er moest dringend iets veranderen.

De oplossing: meer hardware en beter databaseontwerp

De eerste stap was een hardware-upgrade. We hebben een dedicated server aangeschaft - 32 cores, 128 GB RAM, NVMe-opslag. Veel duurder dan de VPS, maar betrouwbaarheid is het waard. Het resultaat? Een enorme sprong vooruit: CPU-belasting daalde naar 30%.

Tijdens de migratie hebben we ook het databaseontwerp onder de loep genomen en ontdekten we dat er een cruciale index ontbrak.

Wat is een index?

Je kunt een index in een database vergelijken met de inhoudsopgave van een boek. Die helpt de database om snel gegevens te vinden zonder elke rij in elke tabel te hoeven doorzoeken. Zonder index moet de database als het ware pagina voor pagina door het boek bladeren - langzaam en inefficiënt.

Als je database niet goed geïndexeerd is, moet ze bij elke aanvraag alle rijen doorzoeken om de juiste gegevens te vinden. Dat veroorzaakt vertraging, zeker bij miljoenen rijen. Een goede index maakt snelle “index scans” mogelijk, net zoals je met een inhoudsopgave meteen op de juiste pagina belandt.

Conclusie: efficiënte databases, lagere belasting

Sinds we de ontbrekende index hebben toegevoegd, draait de CPU lekker relaxed met een gemiddelde belasting van slechts 10%. Het zou makkelijk zijn geweest om dit onder het tapijt te vegen, maar zo werken we niet.

Kortom: we zijn nu goed uitgerust en storingen door capaciteitsproblemen behoren tot het verleden.

Tot slot willen we jou bedanken dat je Müllmail.com gebruikt - of dat nu is voor kortingscodes, nieuwsbriefinschrijvingen of het testen van je eigen mailsysteem. We hebben ook een paar nieuwe domeinen toegevoegd - veel plezier ermee!
Heb je vragen of loop je ergens tegenaan? Laat het ons weten via kontakt@team.muellmail.com!