Her er de store websites' performance-trick

Læs hvordan store websites som YouTube, Facebook, Wikipedia og LinkedIn sikrer en god performance og brugeroplevelse - og hvordan ideerne forfines i cloud computing.

Artikel top billede

Store websites som YouTube, Wikipedia og Twitter anvender forskellige tricks for at kunne servicere deres mange brugere.

En af de vigtigste ting der sikrer brugerne en god oplevelse er hurtige svartider. Blot få sekunders forsinkelse kan få brugerne til at surfe videre på et andet og hurtigere website.

Intelligent dovenskab er godt for performance

Løsningen på at få et hurtigere website er ikke nødvendigvis at få den underliggende database eller webserver til at arbejde hurtigere. Det handler derimod om at være lidt doven - intelligent doven.

Når der kommer en forespørgsel på en webside skal webserveren nemlig først hente de forskellige dele, som udgør websiden - billeder, tekst, annoncer, video og så videre. Nogle af delene kommer fra en database, så webserveren sender også en eller flere databaseforespørgsler inden den kan sammensætte de forskellige elementer i én samlet side, før den sendes ud til brugeren.

Hvis mange tusinde brugere spørger efter nogle af de samme data, kan man selvølgelig prøve at få webserver og database til at hente og sammensætte data endnu hurtigere og på den måde prøve at holde svartiderne nede.

En anden løsning er den intelligente dovenskab. Der er ingen grund til at læse de samme data fra databasen igen og igen, ligesom det ikke er nødvendigt for webserveren at sammensætte den samme side igen og igen. 

Caching for webserver og database

Derfor anvender blandt andre Facebook og Twitter intelligent dovenskab i form af Varnish-softwaren med de danske rødder.
Varnish ligger foran webserveren og gemmer de websider, som webserveren sammensætter. Næste gang en bruger spørger efter websiden, skal webserveren ikke i gang med at sammensætte siden. Varnish serverer websiden til brugeren.

En anden mulighed er at anvende opensource-softwaren Memcached som eksempelvis Twitter, YouTube og Wikipedia gør. Som navnet antyder, så er der tale om en caching-service, der gemmer data i memory (RAM), efter de er blevet læst første gang fra en underliggende database. 
Når en applikation efterfølgende har brug for de samme data er der ingen grund til at læse fra databasen igen. Data hentes fra den langt hurtigere RAM-memory.

Så hvor Varnish ligger foran webserveren og cacher de websider, som webserveren sammensætter, så ligger Memcached mellem databasen og webserveren, hvor den cacher data fra databasen.

Amazon introducerer ny caching service

Inspireret af blandt andet MemCached har Amazon lige udvidet sin cloud computing platform med en ny service ElastiCache.

Anvendelse af caching er absolut ikke en ny opfindelse i IT. Derfor er der allerede en række web-applikationer i Amazons cloud, der anvender caching.

Som Amazons CTO Werner Vogels skriver på sin blog i anledning af lanceringen af ElastiCache:

"Caching er blevet en standardkomponent til at opnå en hurtig og pålidelig performance i mange applikationer."

Det sker ved at udviklerne selv sørger for at etablere caching-servere og tilhørende caching-strategi. Men Amazon ønsker med ElastiCache at gøre det nemmere for udviklerne at anvende caching.

Slip for operationelt møgarbejde

ElastiCache tager sig af trættende og tidsforbrugende caching-detaljer:

"Vedligehold af en samling caching-servere i en pålidelig og skalerbar facon er ikke en enkel opgave. Det hører under kategorien "operationel møgarbejde", men da cachinganvendelse er meget udbredt, er vedligehold af cachingservere ikke længere en differentiator og alle må gøre det som, en del af omkostningen at drive forretning," skriver Werner Vogels. 

ElastiCache hjælper ifølge Werner Vogels og Amazon udviklerne med at slippe for meget af det "operationelle møgarbejde".
 
ElastiCache er kompatibel med Memcached og det skulle være muligt at flytte eksisterende applikationer, værktøjer og udviklerbiblioteker, der anvender Memcached over til ElastiCache uden for meget besvær.

I videoen fortæller Simone Brunozzi fra Amazon om Memcached og ElastiCache.

Læses lige nu

    Navnenyt fra it-Danmark

    Netip A/S har pr. 1. november 2025 ansat Laura Bøjer som Consultant, GRC & Cybersecurity på afd. Thisted. Hun kommer fra en stilling som Assistant Consultant hos PwC i Hellerup. Hun er uddannet med en kandidat i Business Administration & Information System på Copenhagen Business School. Nyt job

    Laura Bøjer

    Netip A/S

    Norriq Danmark A/S har pr. 1. oktober 2025 ansat Rasmus Stage Sørensen som Operations Director. Han kommer fra en stilling som Partner & Director, Delivery hos Impact Commerce. Han er uddannet kandidat it i communication and organization på Aarhus University. Han har tidligere beskæftiget sig med med at drive leveranceorganisationer. Nyt job

    Rasmus Stage Sørensen

    Norriq Danmark A/S

    IT Confidence A/S har pr. 1. oktober 2025 ansat Henrik Thøgersen som it-konsulent med fokus på salg. Han skal især beskæftige sig med rådgivende salg, account management og udvikling af kundeporteføljer på tværs af it-drift, sikkerhed og cloud-løsninger. Han kommer fra en stilling som freelancer i eget firma og client manager hos IT Relation og IT-Afdelingen A/S. Han er uddannet elektromekaniker. Han har tidligere beskæftiget sig med salg af it-løsninger, account management, it-drift og rådgivning samt undervisning og ledelse. Nyt job

    Henrik Thøgersen

    IT Confidence A/S

    Netip A/S har pr. 15. september 2025 ansat Benjamin Terp som Supportkonsulent ved netIP's kontor i Odense. Han er uddannet IT-Supporter hos Kjaer Data. Nyt job

    Benjamin Terp

    Netip A/S