Introduzione a Memcached: performance elevate grazie ad una caching completa
Memcached è un sistema di caching distribuito in RAM per oggetti, è molto usato nell'ambito di applicazioni web dinamiche per alleviare il carico sul database, facendo in modo di servire alcuni dei dati ai quali l’accesso è più frequente, direttamente dalla memoria RAM.
Memcached è stato creato nel 2003 dalla compagnia che gestisce LiveJournal, la Danga Interactive, che si trovava a dover gestire più di 20 milioni di richieste dinamiche al giorno in crescita esponenziale. L’adozione di questo innovativo sistema di caching ha permesso di ridurre drasticamente il carico sui server database e migliorare sensibilmente le performance del sito.
Il software è stato poi rilasciato pubblicamente sotto licenza BSD che ne ha permesso l’implementazione da parte di altri giganti del web e l’inevitabile aggiunta di molte funzionalità e miglioramento costante delle performance. Tra i più famosi utilizzatori di memcached troviamo colossi come Wordpress, Wikipedia, Flickr, Twitter, YouTube, Digg e Facebook.
Proprio Facebook (che ha il più alto numero di server memcached in produzione) è responsabile di molti dei cambiamenti radicali apportati a questo sistema di caching, che ne hanno migliorato notevolmente le performance e al contempo ridotto l’utilizzo di RAM per gestire le connessioni attive e i lock.
Se al vostro sito basta un solo server, molto probabilmente potete fare a meno di memcached (usando APC per esempio, che tra l’altro sarà incluso nativamente in PHP 6), la cui utilità emerge soprattutto quando i web server sono più di uno, visto che memcached permette una cache centrale, condivisa da tutti i server.
A cura di Andrea Usuelli per HostingTalk.it


