Maak uw website performanter met Varnish

Wat is Varnish, en waarom heeft het Thijs Feryn betoverd? Een korte samenvatting van wat de tool doet, en waarom het voor Combell een hoeksteen geworden is van onze hosting.

Interview met Varnish

Varnish Software, het bedrijf achter de gelijknamige populaire Varnish technologie, had Combell evangelist Thijs Feryn gevraagd om op de Varnish Summit in Amsterdam te spreken. Als PHP-expert vindt Thijs immers de manier waarop Varnish de snelheid van in PHP geschreven sites optimaliseert ideaal. Als influencer draagt hij die boodschap dan ook uit. Na zijn talk vroegen de mensen van Varnish waarom Thijs zo hard in Varnish gelooft.

In het interview is Thijs overduidelijk: Varnish spreekt http, je moet het gewoon voor een website zetten, het DNS record wijzigen, Varnish verbinden met de backend en je bent "Good to go". Varnish is een echte life saver, het is een veel goedkopere oplossing dan je code helemaal te moeten herschrijven. Maar wat is concreet het probleem dat Varnish aanpakt, en waarom is het daar zo goed in?

Trage websites - wie is de schuldige?

Vaak doet zich bij nieuwe of bestaande websites het probleem voor dat zij wel goed draaien zolang zij in testfase zijn, op de eigen systemen, maar gaan slabakken zodra zij op de uiteindelijke hosting servers staan en massaal bezoekers moeten verwerken. Vooral bij websites waar content uit databases gehaald moet worden is dit een vaak gehoorde klacht, zo kunnen wij bij Combell ook getuigen.

Maar wat is de oorzaak hiervan? Heeft de ontwikkelaar geen optimale code geschreven of had die de database misschien beter moeten ontwerpen? Of schiet de infrastructuur te kort, is er onvoldoende RAM of CPU voorzien, te weinig servers, of werden de servers niet optimaal geconfigureerd zodat de queries niet voldoende performantie krijgen...

Websites die traag laden, zijn even nefast als websites die volledig down zijn. De performantie van een site is cruciaal voor de ervaring van de gebruiker.

Een schuldige zoeken zet echter geen zoden aan de dijk. Thijs heeft het bij Combell keer op keer meegemaakt, als ontwikkelaar die in een infrastructuur omgeving werkt. Soms is het inderdaad code die niet goed schaalbaar is. En soms zijn het slecht genomen beslissingen bij de uitbouw van de architectuur. Maar het gaat om oplossingen, en dan is Varnish de life saver.

Caching met Varnish zorgt voor snellere laadtijden

Varnish cacheHet sleutelwoord is caching - en Varnish is daar de ideale tool voor. Dynamische gegevens, die normalerwijze on-the-fly uit de database gehaald worden, worden daarbij statisch bijgehouden zodat zij sneller weergegeven worden.

Eigenlijk kan je de werking van Varnish best vergelijken met een proxy server, zoals vroeger gebruikt toen internetverbindingen nog traag waren. De content van sites werd toen bijgehouden op proxy servers, zodat inhoud van sites die reeds door andere gebruikers bezocht waren, sneller getoond kon worden.

"Waarom een stukje informatie terug laten berekenen, wanneer het niet gewijzigd is? Waarom daar rekenkracht aan verspillen?"

Wat Varnish doet is een 'reverse proxy' creëren: de server staat niet aan de kant van de gebruiker, maar in het datacenter. De resultaten van de servers worden in cache genomen en in statische vorm aan de bezoekers geleverd. Tijdwinst uiteraard, want het verzoek moet niet telkens eerst naar de backend servers. Dynamische websites met een Varnish cache worden dan ook als sneller ervaren.

Tips van Thijs om Varnish te perfectioneren

De meeste van je caching problemen zullen opgelost zijn wanneer je op voorhand een goede caching strategie inbouwt in je softwarestrategie. Denk er bovendien aan:

  • Vermijd het om cookies te gebruiken waar zij niet nodig zijn.
  • Zorg voor een stevige strategie voor het invalideren van de cache. Statische data in de cache opnemen is een must, té agressief cachen is echter fout.
  • Dynamische pagina's cachen is de prioriteit, statische bestanden hebben dat niet zo nodig.

Niet alles kan en mag echter ge-cached worden. Met de Varnish Configuration Language leg je daarvoor regels vast.

Meer tips over het gebruik van Varnish

Hoeksteen van Combell hosting

Varnish staat niet alleen bij Thijs zelf, maar ook bij Combell hoog aangeschreven. Varnish wordt al enkele jaren met succes ingezet - soms als noodmiddel, wanneer een bestaande site slecht presteert, maar steeds vaker als echte basis, van bij het begin opgenomen in de planning van de site.

Combell trekt dan ook de nodige middelen uit om de kennis van deze technologie voortdurend bij te schaven en expertise uit te bouwen in deze open source reverse proxy software. Een mooi bewijs daarvan is het feit dat Thijs Feryn, Combell evangelist en PHP-expert, nu wereldwijd gevraagd wordt om lezingen over Varnish te geven. Een eer voor Thijs… die afstraalt op Combell!

Download ons gratis e-book 'Bliksemsnelle sites met Varnish'