Aquive Media Ons zero downtime deployment script voor Magento 2​

Ons zero downtime deployment script voor Magento 2

Wat lees je hier?

Je leest hoe wij een script hebben opgezet, waardoor onze Magento 2 klanten nooit meer uit de lucht zijn door ontwikkeling. Daarnaast hoe deze tot stand is gekomen en te werk gaat. Veel lees plezier!

Het script dat zorgt voor zero downtime voor Magento 2 webshops

Dagelijks zetten wij verschillende features live voor onze klanten. Dit kan ervoor zorgen dat je tussen de 30 seconden en 20 minuten uit de lucht bent, afhankelijk van de soort feature. Hieruit vloeide de wens vanuit de klant om dit te verlagen zo dicht mogelijk bij de 0 seconden.

Aquive Media Magento zero downtime deployment script Magento 3

Hoe kunnen we zonder downtime nieuwe features live zetten in Magento 2 webshops?

Een custom script die uitgevoerd kan worden op de server, waardoor er op de achtergrond features worden gegenereerd en in een keer worden gekopieerd naar de live omgeving. De downtime van tussen de 30 seconden en 20 minuten teruggebracht naar tussen de 0 en 30 seconden.

“We hebben dit bij drie Magento 2 webshops uitgetest en het resultaat is geweldig. De downtime van tussen de 30 seconden en 20 minuten teruggebracht naar tussen de 0 en 30 seconden.”

Best practices en bestaande oplossingen

We zijn waarschijnlijk niet de eerste met dit idee. Vanuit deze gedachte werd het beste script online gezocht, welke zo min mogelijk aantal aanpassingen deed aan de server zelf. Op deze manier is het script direct inzetbaar voor alle webshops. Daarna wil je het script zo gebruiksvriendelijk mogelijk maken voor de technisch beheerder van de webshop.

Gebruiksvriendelijk, veilig en snel

We zijn begonnen met een bestaand script, want deze had een sterke basis. Dit script kon je via parameters gebruiken, wat het erg onoverzichtelijk maakte want je weet niet exact wat je doet.

Na onze aanpassingen hoeft dit niet meer. De eerste keer dat je het script draait kan je de verschillende talen van de shop opgeven. Vervolgens kan je het script uitvoeren. Je krijgt 3 opties waaruit je kan kiezen. Dit zijn de meest voorkomende Magento deployment commando’s.

1. Static content deploy
2. Modules
3. All

Met ‘Static content deploy’ worden alleen de statische thema bestanden vernieuwd met de nieuwe wijzingen. Dit houdt alle CSS-aanpassing in, zoals het aanpassen van de kooproute knoppen naar oranje. Een ander voorbeeld is het veranderen van de volgorde van elementen zoals tekst en afbeeldingen.

Met het commando ‘Modules’ kan je kiezen welke nieuwe modules er op de shop worden geïnstalleerd met een druk op de knop.

Het commando ‘All’ voert in principe beide commando’s uit.

Resultaten

We hebben dit bij drie Magento 2 webshops uitgetest en het resultaat is geweldig. De thema aanpassingen via het commando ‘Static content deploy’ is geheel zonder downtime. Hiervoor kostte dat een paar minuten, wat een aanzienlijk verschil is. De commando’s ‘Modules’ en ‘All’ is teruggebracht van een kwartier tot 20 minuten naar 0 tot 30 seconden.

Wat voor server specificaties moet je voor dit script bezitten?

  • 20 -30 GB opslag in totaal
  • 4 GB ram

Welke vervolgstappen zijn er?

Het bovenstaande script hebben we tijdens onze DevDay gerealiseerd, echter willen we graag blijven optimaliseren. Dit betekend dat tijdens de volgende DevDay we de volgende punten gaan aanpakken.

  • Absolute zero downtime. Geen enkele seconde wachten voor alle features
  • Pipeline deployment. Alles via BitBucket pushen en automatisch laten plaatsen op de live site.
  • Automatisch pushen.

Conclusie

Dankzij dit script zijn de webshops van onze klanten nooit meer uit de lucht, wat een positieve impact heeft voor zowel de bezoekers, de developer en de ondernemer.

Samenwerken met het Magento bureau van Groningen?

  • Gratis kennismakingsproject
  • Consultants direct tot je dienst
  • Volledig vrijblijvend
  • Gratis advies en kennisdeling

Wil je ook nooit meer uit de lucht zijn door development? We helpen je graag verder.

  • Gratis kennismakingsproject
  • Magento consultants direct tot je dienst
  • Volledig vrijblijvend
  • Gratis advies en kennisdeling