True x Adchieve

Adchieve: meer groei mogelijk dankzij migratie naar Azure met True

True Story van Adchieve
True Story van Adchieve
Home / Over True / Klanten / Adchieve
De groei in verwerking van data van miljoenen online advertenties zorgde voor hiccups in database performance. En daarmee hiccups in de beschikbaarheid van de applicatie van Adchieve. Door de jarenlange samenwerking met managed hoster True werd een volgende groei-oplossing gevonden: migratie naar Azure. In deze True Story geven Geerco de Voogd (Chief Operations Officer bij Adchieve), Rik Coenders (Product Owner bij Adchieve) en Makke Post (Public Cloud Engineer bij True) mee hoe dat is gelopen en voor welk resultaat het heeft gezorgd.

SaaS oplossing voor automatische online advertenties

“Adchieve is een SaaS-oplossing in de online marketing automation. Niet iets wat je snel uitlegt” grapt Rik. Adchieve regelt automatisch advertenties op grote schaal voor bedrijven, op online platformen zoals Google Ads, Bol, Facebook of Beslist. Vooral voor bedrijven in de e-commerce en reisbranche is dit een uitkomst: grote hoeveelheden advertenties hoeven niet meer handmatig te worden ingeklopt.

Rik: “Deze bedrijven sturen met onze oplossing data in een feed door, bijvoorbeeld een lijst van alle producten die ze verkopen. Dat verwerkt Adchieve in advertenties voor de genoemde platformen, zowel met de ruwe product data als met een template van advertentieteksten die onze klant kan aanpassen en door kan zetten. Is productinformatie niet compleet, dan kan onze klant dat binnen onze applicatie aanvullen.”

“Daarnaast bieden we inzichten in hun advertenties. Advertenties in bulk op grote platformen draaien, levert enorm veel data op. Die maken we inzichtelijk voor onze klanten: wat presteert wel en wat niet, waar kun je aan werken om je omzet te verbeteren. Onze applicatie werkt op de achtergrond, waarbij het alleen om instellen en bijhouden gaat. Niet meer om dagelijks advertenties handmatig te moeten bijwerken!” zegt Geerco. “Zo maken we het leven van e-commerce en reisorganisaties makkelijker, zorgen we met automatisering dat advertenties sneller online staan en dat onze klanten leren van inzichten uit data. We helpen ze om meer omzet te halen uit elke marketing-euro die ze investeren.”

Ontwikkeling in Symphony met MySQL met uitstapjes naar Python

“Onze applicatie is gebouwd met Symphony, een PHP framework, waarbij we data in MySQL hebben staan. Daarnaast hebben we een takensysteem zelf geprogrammeerd; voor ons was er niet iets in de markt dat aan onze behoeften voldeed”, zegt Rik. “Daarnaast gebruiken we Python voor het verwerken en analyseren van grote datasets. We experimenteren met Databricks, een data lake platform, dat een hoop configuratiewerk uit handen kan nemen, waardoor wij op de data zelf kunnen focussen.”

Geerco: “Onze applicatie hosten we al ruim 10 jaar bij True. Voor ons kwam het kostenplaatje niet uit om hosting zelf te doen. Dat betekent namelijk ook dat je iemand continu beschikbaar moet hebben voor monitoring.”

“We zijn heel tevreden over de samenwerking met True, al helemaal over onze nieuwste stap samen: migratie naar Azure.”

Geleverde
diensten

Bottleneck voor groei: hosting voor dataverwerking

“Met de groei van de hoeveelheid online advertenties merkten we dat de huidige hosting oplossing onvoldoende schaalbaar was. Met veel moeite hielden we de applicatie samen met True in de lucht, maar het viel toch regelmatig uit. Ook hardware en andere fysieke componenten waren zo langzamerhand afgeschreven”, zegt Geerco.

Als je organisatie zo sterk op data drijft, zijn replica’s van je database én back-ups missiekritisch. “Alleen ging het nu om zoveel data, dat de servers het niet altijd aan konden. Eén back-up draaien kon ervoor zorgen dat de server omviel. Maar zonder kunnen we niet,” zegt Rik. “Engineers van True schakelen snel en helpen ons hierbij zo goed mogelijk. Het punt was wel: als het om zoveel issues gaat, is het voor niemand leuk. De urgentie voor een nieuwe hosting-oplossing was hoog.”

Keuze voor nieuwe hosting met 3 scenario’s

“Bij een nieuwe oplossing is er een grote onbekende: je weet van tevoren niet wat er op je af komt. Zowel op technisch vlak als voor het kostenplaatje”, zegt Geerco. “True heeft 3 scenario’s uitgewerkt. Daarmee konden we samen onderzoeken welke het beste paste voor de groei en voor onze ambities. Uiteindelijk zijn we op Azure als Public Cloud terecht gekomen. Het geeft ons de vrijheid van de cloud en zorgt dat de infrastructuur toekomstbestendig is.”

Rik vult aan: “Voor onze applicatie zijn kosten voor verwerken van data het hoogste. Een paar procent meer of minder verwerken is een enorm verschil. Om hoeveel zou dat in de nieuwe situatie gaan? Dat is nodig om te weten voor het totaalplaatje, maar lastig om te meten.” Geerco: “En wat ook gold: zodra we voor een nieuwe oplossing zouden kiezen, konden we niet meer terug.”

“Met 3 scenario’s voor een nieuwe hosting-oplossing onderzochten we samen welke het beste past voor onze groei en ambities.”

Proof-of-Concept op Azure

De volgende vraag, hoe pak je de migratie naar Azure aan? Hoe weet je of het werkt? Rik: “Daarvoor hebben we een Proof-of-Concept (PoC) gebouwd. Hierin hebben we een deel van de workload van onze applicatie naar Azure gezet. Dan kun je goed checken hoe het draait. Klanten die graag nieuwe features willen, en daarmee genoegen nemen met een iets minder stabiele omgeving, lenen zich daar voor. Deze POC gaf ons een beter beeld hoe de hele applicatie uiteindelijk op Azure zou draaien.”

“De PoC was ook nodig voor de financiële impact,” vult Geerco aan. “Daarvoor hebben we ook hulp gehad van Microsoft, via True, als het gaat om implementatiekosten. Gaaf om achteraf te zien: de uiteindelijke kosten zaten niet ver van de financiële inschatting die we door de PoC konden maken!”

Geerco en Rik geven aan dat de PoC ook goed was om de eerste ervaringen met Azure en de inrichting van de omgeving daarin, op te doen. “Het zorgde voor kennisoverdracht aan beide kanten, zowel bij ons als bij True. Het heeft de samenwerking ook goed gedaan!” zegt Rik. “Dat moest ook wel: we hadden een strak plan, binnen 2-3 maanden wilden we over zijn. Dat scheelt namelijk dubbele maandkosten voor hosting.”

Wat kwam er op jullie af op technisch gebied? Geerco: “Dat is heel erg meegevallen, met weinig spannende issues. Denk aan database instellingen die net wat anders zijn, waardoor de applicatie zich anders gedraagt. De grootste technische uitdaging was nog wel de PoC: de applicatie op beide platformen moest toegang hebben tot het andere platform. Maar je wilt niet alles zomaar openzetten en daarmee de veiligheid in gedrang laten komen.”

Team Adchieve

Migreren naar Azure met een migratieplan

“De PoC leverde ook input voor het migratieplan. Vooral wie op welk moment ermee bezig zou zijn en wie beschikbaar zou moeten zijn, ook vanuit de kant van True. Die aanpak is supergoed met True gegaan”, zegt Rik.

Vanuit True vult Makke aan: “De migratie liep voorspoedig door het plan. Voor het werk aan onze kant bestond dat uit de infrastructuur uitrollen en beschikbaar zijn voor vragen en aanpassingen, bijvoorbeeld voor de firewall. We werkten samen met de tech lead van Adchieve, waar we ook technisch heel goed mee konden sparren. Hij begreep technische uitdagingen. Dat maakt het makkelijker om te sparren en om samen oplossingen te vinden.”

Business critical database servers op Azure

Makke: “Omdat data missiekritisch voor Adchieve is, zijn dat de databases dus ook. We hebben 4 database servers voor ze opgezet waar de databases op draaien. Twee servers zijn groot en beschikken over veel resources, zoals compute en memory. Voor de workloads hebben we stap voor stap gekeken wat nodig was voor resources, om dat te tweaken en finetunen. De databases staan op een business critical database server op Azure. Dit type server is geoptimaliseerd voor memory resources, precies wat de memory-intensieve workloads van Adchieve nodig hebben. Dit type database server is binnen Azure het meest geoptimaliseerd voor performance. Die zet je echt alleen in voor missiekritische applicaties met zware dataverwerking.”

Een van de voordelen die bij een Public Cloud als Azure wordt genoemd, is geografische verspreiding. Dat is ook voor Adchieve ingezet. Makke: “We hebben de back-up van de database geografisch redundant uitgevoerd. Er staat een kopie in een compleet andere regio. Mocht de primaire regio uitvallen, dan is alle data nog beschikbaar. Dat is belangrijk voor Adchieve en de workloads die ze draaien.”

Resultaat van de migratie naar Azure

“We zijn heel tevreden over de migratie! Het voorwerk kostte veel tijd en energie, maar heeft zich dubbel en dwars bewezen”, zegt Geerco.

Wat is het resultaat van de migratie? Rik: “Dezelfde snelheid als eerder, alleen dan zonder downtime. En dat scheelt heel erg veel! De stabiliteit is enorm toegenomen. We hoeven nu in het weekend niet meer te checken hoe het ervoor staat en om het te herstarten als nodig. Zelden meer weekendwerk!”

Geerco vult aan: “Een andere mogelijkheid na deze migratie, is dat we de gebruikte resources op databases per individuele klant kunnen berekenen. Dat was eerder niet mogelijk; zou een klant minder data draaien, dan hadden we alsnog de servers aan staan. Nu kunnen we deze kosten één-op-één doorbelasten.”

Een toekomstbestendig fundament

Wat gaat de toekomst brengen voor Adchieve? Waar willen jullie aan werken? Geerco: “Deze migratie voelt voor ons ook aan als een nieuw fundament. We wisten dat we vanaf de oude omgeving niet verder konden uitbouwen. Ook al is dit nieuwe fundament niet 100% perfect, het biedt ons veel meer mogelijkheden voor de toekomst!”

Meer informatie over Managed Azure voor jouw applicatie of webshop?

Profiteer direct van alle mogelijkheden van Azure. Vanuit onze jarenlange ervaring ondersteunen we je tijdens het migratieproces, en ontwerpen en implementeren de meest geschikte omgeving en services voor jouw landschap.

object storage large
object storage small

Meer True Stories