Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 66 reacties

Tweakers.net serverpark aankondigingspicjeWat houdt loadbalancing in? Loadbalancing betekent heel letterlijk het verdelen van werk over meerdere uitvoerenden. In praktijk houdt dat voor Tweakers.net in dat wij de binnenkomende requests (opdrachten van bezoekers om pagina's te genereren) voor de verschillende websites verdelen over het serverpark. Dat dit een groot aantal voordelen heeft hoeven wij je waarschijnlijk niet te vertellen, maar toch noemen wij een aantal redenen die voor ons van belang waren:

  • Als er een server uitvalt wordt dat opgevangen door de andere servers uit de groep servers (de serverpool). Hetzelfde geldt uiteraard voor servers die vanwege onderhoudsredenen worden platgelegd.

  • Indien een bepaalde website ineens heel zwaar belast wordt staan de andere servers klaar om die verzwaring samen op te vangen. Zonder loadbalancing zou één server op eigen houtje alle extra aandacht moeten verwerken, iets wat meestal resulteert in een niet bereikbare site.

Loadbalancing wordt dus meestal om twee redenen toegepast; het verdelen van de werklast en het verlagen van het aantal 'Single Point of Failures'.

* Hoe doet Tweakers.net dat op dit moment?

Momenteel proberen we de websites zo goed mogelijk te verdelen over de servers, rekening houdend met de zwaarte van de verschillende onderdelen. De frontpage wordt door middel van een zogenaamde 'round robin DNS' verdeeld over verschillende webservers. Dit betekent dat er meerdere servers zijn die reageren op de naam www.tweakers.net, omdat de DNS-server instructies heeft om het IP-adres van een willekeurige server uit de groep terug te geven wanneer iemand om de naam www.tweakers.net vraagt. Het nadeel van deze methode is vrij makkelijk te zien; als er een server uitvalt zal een deel van de requests niet afgehandeld worden omdat de DNS-server niet controleert of een bepaalde server wel online is. Stel dus dat één van de drie servers uitvalt, dan komt een derde van de bezoekers bij een dode server uit. Ook een nadeel is dat de DNS server niet kan zien hoeveel werk de servers hebben, hierdoor kan het nog steeds voorkomen dat een server, die te veel werk heeft, aangesproken wordt.

Tweakers.net DNS round robin diagram

* Enkele andere manieren van loadbalancing

Naast de vrij primitieve 'round robin'-methode is het ook mogelijk om een speciale server in te zetten als 'front-end'. Deze vangt dan alle connecties op en stuurt deze door naar één van de servers uit de serverpool. De zogenaamde 'virtual server' software voor Linux is een voorbeeld van een pakket dat dit kan regelen. Net toen we bezig waren om een dergelijke constructie te implementeren werden we benaderd door BrainForce, met de vraag of we niet toevallig interesse hadden om de nieuwe One4Net B-100 opstelling uit te proberen.

Brainforce B-100 loadbalancer


Uiteraard zijn er nog vele andere manieren van loadbalancing, zo zijn er een aantal softwarematige methoden. Een ervan is het inzetten van een reverse-proxy met bijvoorbeeld Squid. Deze methode kan weliswaar een verdeling maken van de load, maar heeft geen mogelijkheden voor failover als de load balancer of één van de webservers uitvallen. Verder zijn er modules voor Apache zoals mod_backhand, maar hoewel dit best aardig werkt hou je natuurlijk een 'Single Point of Failure'.

Er zijn natuurlijk ook vele hardwarematige oplossingen. De zelfbouw Linux Virtual Server systemen, die we al eerder hebben genoemd, beschikken wel over failover en high availability features voor zowel de loadbalancers als de webservers. De hardwarematige oplossingen van bedrijven als Cisco, BigIP en Foundry Networks hebben als voordeel dat zij snel geïmplementeerd kunnen worden, veel mogelijkheden hebben en gebruiksvriendelijk zijn. Helaas zijn deze loadbalancers erg duur. Denk hierbij aan bedragen van 10.000 tot soms wel 25.000 dollar.


Door Arjen van der Meijden

- Lead Developer

In oktober 2001 begonnen met als voornaamste taak het technisch beheer van het forum. Daarna doorgegroeid tot senior developer en softwarearchitect. Nu lead developer, met een leidinggevende taak binnen het team van programmeurs en systeembeheerders van Tweakers.

Lees meer over



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True