Serverless is een manier om kleine stukjes code te laten draaien op het platform van een aanbieder, zonder dat je zelf een server beheert. Servers bestaan nog wel, maar het onderhoud ligt bij de aanbieder. Dat scheelt jou werk, zoals het bijwerken van de server.
Wat is serverless?
Je schrijft een functie, uploadt hem en het platform draait hem zodra een verzoek erom vraagt. De naam is misleidend, want servers bestaan nog steeds, maar ze zijn de zorg van de aanbieder en niet van jou.
Op een klassieke host huur of deel je een server, installeer je PHPPHP is de programmeertaal waarmee veel websites, zoals WordPress-sites, hun pagina's maken op het moment dat een bezoeker erom vraagt. en een database en houd je dat alles bij. Bij serverless is de eenheid die je beheert een functie. Die krijgt invoer, zoals een formulierinzending, doet een klus en geeft een resultaat terug. Het platform start de functie wanneer nodig en regelt waar en hoe hij draait.
Facturering en limieten hangen van de aanbieder af, dus controleer ze voordat je erop bouwt. Functies hebben meestal grenzen aan looptijd en geheugen, wat bij korte klussen past. Serverless functies die dicht bij de bezoeker op een CDNEen CDN is een netwerk van servers over de hele wereld dat kopieën van je website bewaart, zodat bezoekers hem van dichtbij krijgen. draaien heten edgeEdge computing betekent dat kleine stukjes code draaien op servers dicht bij je bezoeker, in plaats van op één plek ver weg.-functies.
Wat serverless betekent voor je PHP-site
Een PHP-site heeft een server nodig die PHP draait, met een versie die je ondersteund moet houden. Dat is het deel dat veroudert en doelwit wordt als er een nieuwe kwetsbaarheidEen kwetsbaarheid is een zwakke plek in software waar een aanvaller misbruik van kan maken, zoals een deur die niet goed op slot gaat. opduikt. Met serverless functies achter een statische siteEen statische website bestaat uit kant-en-klare pagina's die de server alleen hoeft af te geven, zonder dat er bij elk bezoek iets wordt berekend. is er geen eigen PHP-installatie om te patchen. Een site zonder PHP en database tijdens een paginaweergave heeft een kleiner aanvalsoppervlakHet aanvalsoppervlak is het geheel van plekken waar een aanvaller kan proberen je website binnen te komen, zoals logins, formulieren en plugins., al kunnen je functiecode, de sleutels en de toegangsrechten nog fout zijn.
Bedenk wat je inlevert. Een functie is goed in één kleine klus. Heeft je site veel functies die een database delen, dan is opsplitsen in functies meer werk dan het klinkt. Houd wat dynamisch moet zijn klein en helder.
Zo zie je wat een functie kan zijn
Loop na wat je PHP-site op de server doet naast pagina’s tonen. Een contactformulier dat een e-mail verstuurt is het klassieke geval. Dat geldt ook voor een nieuwsbriefaanmelding die een mailingdienst aanroept, een zoekopdracht op een index of een controle van een spamtoken zoals TurnstileTurnstile is een controle van Cloudflare die op je formulieren echte mensen van spamrobots onderscheidt, zonder dat bezoekers puzzels oplossen.. Elk daarvan kan een functie zijn. Functies met een gebruikersaccount, langlopende processen of een complexe database zijn lastiger.
Schrijf per functie de invoer, de uitvoer en de benodigde geheimen op. Bewaar geheimen in de geheime opslag van het platform, nooit in paginacode die bezoekers kunnen lezen.
Een gebruikelijke opzet
Een JamstackJamstack is een manier van bouwen waarbij pagina's van tevoren klaargemaakt en snel afgeleverd worden, zonder dat de server ze per bezoek opbouwt.-site is een set vooraf gebouwde pagina’s op een CDN. Het contactformulier post naar een functie, die de inzending controleert, doorgeeft aan je e-mailservice en een bevestiging teruggeeft. Er draait geen eigen server en de pagina’s zijn voor elke bezoeker dezelfde bestanden. Zo pakken we de dynamische delen aan als we een site herbouwen als een website zonder PHP.
Wanneer onderneem je actie
Kijk naar serverless als je PHP wilt loslaten maar nog een paar dynamische functies nodig hebt, of als een server die je beheert meer moeite kost dan de site rechtvaardigt. Loopt je PHP-versieEen PHP-versie is het nummer van de uitgave van PHP waarop jouw website draait, zoals 8.3. naar het einde van de support en weet je niet welke route je kiest, dan is een gesprek over onze hulp bij website verhuizen een goede eerste stap.
Veelgestelde vragen
Betekent serverless dat er geen servers zijn?
Nee. Er zijn nog steeds servers, maar de aanbieder beheert en patcht ze. Jij uploadt een functie, het platform draait hem als er een verzoek komt en je beheert de machine eronder niet.
Waar gebruik je serverless voor op een website?
Typische klussen zijn een contactformulier afhandelen, een e-mail versturen, een spamtoken controleren, met een externe dienst praten of een klein stukje data aan een statische pagina teruggeven.
Is serverless veiliger dan een gewone server?
Je patcht zelf geen besturingssysteem of PHP-installatie meer, wat een soort werk wegneemt. Je eigen functiecode, de geheimen en de rechten ervan vragen nog steeds zorgvuldigheid.
Kan ik mijn PHP-applicatie naar serverless verhuizen?
Kleine delen wel. Een grote applicatie met een database en veel functies vraagt meestal eerst een nieuw ontwerp. Een gebruikelijke aanpak is de content statisch maken en alleen de dynamische onderdelen naar functies verplaatsen.