Content Delivery Network (CDN) - hurtig levering i hele verden

Content Delivery Networks er en central del af alle moderne cloud-setups. I stedet for at have én server til at levere til alle brugere (både dem geografisk tæt på og dem langt fra serveren), så laver man et synkroniseret netværk af såkaldte "Points of Presence" (POP's), der deles om at levere hurtigst muligt til alle brugere.

CDN'er er en halvgammel opfindelse. Det startede allerede tilbage i slut-halvfemserne, da internettets udbredelse begyndte at medføre performance-problemer for centrale servere. Man blev nødt til at sætte flere servere op og lade dem deles om arbejdet.

Vi deles om arbejdet - loadbalancering

I første omgang vil vi gerne have flere servere til at deles om arbejdet med at sende indhold ud til alle brugerne. Gennem årene er der prøvet alverdens ting og sager i forhold til at lade flere servere deles om arbejdet (kaldet "loadbalancering"). Ofte har det været det vi kalder horisontal skalering af de elementer af løsningen som var under mest pres. Eksempelvis har databaseserveren i traditionelle CMS-baserede websites ofte været en flaskehals, og løsningen har været at sætte flere synkroniserede databaseservere op. Andre gang har det været webserveren, og så er det blevet klaret ved at sætte flere webservere op.

Nedenstående diagram viser helt grundlæggende den gamle "single-server-løsning" til venstre, og så et mere moderne setup med "multi-server-løsning" til højre.

CDN diagram

Loadbalancering og geografi: Points Of Presence (POP's)

Vi ønsker at levere så hurtigt som muligt til alle - uanset fysisk lokation. Den fysiske afstande mellem klient og server har stor indflydelse på hastigheden hvormed indhold leveres. Stor afstand er lige med længere ventetid, og derfor vil vi gerne have alle klienter til at modtage fra et nært "Point of Presence". Moderne cloudbaserede CDN'er er lige præcis en samling af POP's med bagvedliggende teknologi til at distribuere indhold rundt, og synkronisere ved ændringer.

CDN'er bør være en del af alle moderne webløsninger

Hos LAIT benytter vi os af en lang række forskellige services som i sidste ende handler om CDN'er. Vi anbefaler altid arkitektur baseret på CDN'er, og i alle microservice-orienterede løsninger vil det være en helt naturlig del af løsningen.

Eksempelvis bruger vi ofte Jamstack arkitektur i forbindelse med vores frontend-applikationer, og den helt grundlæggende fordel ved Jamstack, er netop muligheden for meget effektiv drift via en CDN-baseret løsning som Netlify. På samme måde indgår håndtering, optimering og levering af billeder via CDN også i rigtig mange af vores løsninger. Her har Imgix eksempelvis en fantastisk løsning.

Udviklingen af cloud-teknologi har gjort adgang til CDN'er meget nemmere end tidligere. Vi anbefaler alle at indtænke CDN'er som en naturlig del af deres kommende løsning.