L'architettura di Wikipedia nel dettaglio

| | Commenti (6) | TrackBack (0)

Wikipedia Logo Ho sempre letto con interesse (e spesso ammirazione) i whitepaper che descrivono le architetture delle applicazioni web, ovviamente ammesso e non concesso che queste applicazioni suscitino un certo interesse.
Senz'altro a nessuno verrebbe in mente di chiedermi le caratteristiche del sito www.simonecarletti.com tuttavia progetti come FeedBurner, WikiPedia, Google e suoi prodotti hanno sempre il loro fascino.

Era dal tempo del post Quanti dati indicizza Google?, quindi oltre un anno fa, che non mi capitava di sgranocchiare altrettanto impazientemente un whitepaper su un'architettura degna di interesse.
Grazie ad un vecchio post di Kevin Burton scopro che Domas Mituzas, che lavora per MySQL AB e Wikipedia, ha pubblicato un interessante workbook sull'architettura interna dei server della famosa enciclopedia. Sempre dal post di Domas scopro che un altro interessante whitepaper pubblicato illustra l'architettura di WikiMedia.


Per i più curiosi che non disdegnano qualche pillola ma che non amano dedicarsi alla lettura di questi documenti, ecco alcune informazioni.

Architettura LAMP

Wikipedia LAMP

Wikipedia si basa su una architettura LAMP, ovvero

  • Sistema operativo Linux, normalmente Fedora o Ubuntu
  • WebServer Apache
  • Database MySQL
  • Linguaggio di programmazione PHP, versione 5 (requisito minimo della piattaforma MediaWiki)

La piattaforma e MediaWiki, progettata e sviluppata dalla WikiMedia Foundation che, per intenderci, è la stessa fondazione alla base di WikiPedia.
Per accelerare i tempi di caricamento e gestire al meglio il carico, subentrano alcuni componenti di caching e distribuzione come

  • Il proxy SQUID
  • Il webserver lighttpd per la gestione dei file statici
  • Memcached per il caching di alcune risorse ed elaborazioni

Il documento prosegue poi presentando nel dettaglio l'architettura del sistema di caching e del database, fornendo utili informazioni su come ottimizzare ad esempio le query con appositi indici.
Il sistema di ricerca si basa su un porting di Lucene (che nativamente è scritto in Java) mentre il bilanciamento del carico è affidato a LVS (Linux Virtual Service).

Wikipedia Environment

Il whitepaper conta 30 pagine di dettagli tecnici ed utili informazioni, soprattutto per chi si prepara alla creazione di un progetto che dovrà presumibilmente sostenere carichi non indifferenti.
Un'ottima lettura, non certo da ombrellone però.

0 TrackBacks

Listed below are links to blogs that reference this entry: L'architettura di Wikipedia nel dettaglio.

TrackBack URL for this entry: http://www.simonecarletti.com/mt4/mt-script-tb3.cgi/685

6 Comments

faquick said:

... e quindi? :-P

Fiabeschi said:

E poi?

Siete simpatici quanto una forma di gorgonzola nel frigo... 8-)

Mo' vi banno l'IP ora. :P

Giusto oggi pensavo a Wikipedia :D ... ma è un'altra storia :D

brag said:

La stessa Wikipedia fornisce molte info sulla sua struttura e le caratteristiche/ubicazione dei server; ad esempio http://en.wikipedia.org/wiki/Wikipedia_servers#Software_and_hardware
Sicuramente interessante; purtroppo non ci capisco una mazza :(

flashmotus said:

ti ringrazio, l'architettura di wikipedia era una curiosità che da tempo non riuscivo a soddisfare, mancanza di tempo ma soprattutto di fonti "attendibili" di informazione.

Leave a comment

Disclaimer:
SPAM comments or messages posted just in order to take advantage of search engines popularity might be removed without any notice.
Comments are filtered against Akismet antispam service, keyword filters and blacklists.

FeedBurner Network

Questo blog è parte del network Web Marketing e Motori di ricerca (a FeedBurner Network).

Scopri di cosa si tratta (sì, lo so, il post introduttivo è un po' lungo...)

Non perderti gli aggiornamenti

Feed Sottoscrivi il feed

Non conosci i feed RSS? Hai paura che sia una fregatura? Questa breve presentazione fa al caso tuo... prenditi 5 minuti, è divertente! :)

servizi e curiosità

Add to Technorati Favorites
Aggiungi il blog al tuo elenco di preferiti su Technorati.

Creative Commons License
This weblog is licensed under a Creative Commons License.
Powered by
Movable Type 4.1