Il server database: dietro le quinte di hwupgrade

Il server database: dietro le quinte di hwupgrade

Il server database del forum di discussione è indubbiamente l'elemento più critico dell'intera infrastruttura di server che utilizziamo per pubblicare quotidianamente i contenuti di Hardware Upgrade. Vediamone le basi di funzionamento tecnico, e quali considerazioni abbiano guidato la scelta del nuovo server in produzione

di Paolo Corsini pubblicato il nel canale Server e Workstation
 

Il server in produzione

Nel corso degli anni il traffico del forum di discussione di Hardware Upgrade ha continuato a crescere, seguendo una dinamica lineare con la crescita del pubblico del sito nel suo complesso; questo ci ha portato ad affrontare più volte problemi legati al carico eccessivo dato dal database del forum, e dall'inadeguatezza della componentistica hardware scelta volta per volta. Abbiamo cambiato server database più volte e cercato tutte le ottimizzazioni da lato codice e MySQL, giungendo alla conclusione che il quantitativo di memoria di sistema montata nel server database deve necessariamente essere almeno pari alla dimensione del database.

Con l'ultimo aggiornamento del server database del forum abbiamo introdotto alcune modifiche rispetto al server precedente, mantenendo lo stesso quantitativo di memoria RAM e utilizzando un sottosistema dischi più complesso e sicuramente più veloce. Dal versante processori siamo passati da una configurazione dual Socket dual Core ad una dual Socket quad Core, consapevoli tuttavia di come MySQL non scali linearmente al crescere del numero di Core di processore a disposizione del server. Rispetto al server precedente, che resterà in produzione come nuovo server database per le ricerche prendendo il posto di quello attualmente in produzione, le prestazioni velocistiche della nuova soluzione non incrementeranno in misura tangibile come avvenuto in passato nel momento in cui abbiamo aggiornato il server database del forum. Del resto con questo nuovo server la finalità principale non era quella di fornire superiore potenza elaborativa, quanto migliorare la parte di gestione complessiva.

Il server dual Opteron utilizzato sino ad ora quale database del forum è infatti una soluzione barebone sviluppata da Tyan, che abbiamo configurato con memoria, processori, hard disk e controller di nostra scelta. E' questo un approccio decisamente consigliabile per molte tipologie di server, in quanto permette di bilanciare al meglio prestazioni con i costi, ma per alcuni ambiti applicativi più critici una soluzione completa rappresenta una soluzione decisamente preferibile. Due sono gli elementi che citiamo a riguardo, da una parte l'alimentazione ridondata, dall'altra la presenza di un sistema di management remoto, che possono mettere al riparo da malfunzionamenti di questo database ed evitare downtime. Nel momento in cui questo server ha problemi, infatti, non solo tutto il forum smette di funzionare ma anche la gestione della parte di commenti ai contenuti pubblicati sul sito, tutti legati al database del forum, smette di funzionare rendendo difficile la lettura dei contenuti editoriali pubblicati su Hardware Upgrade.

mrtg_web.gif (8336 bytes)
grafico MRTG della percentuale di occupazione del processore di un server web

mrtg_dbforum.gif (8275 bytes)
grafico MRTG della percentuale di occupazione del processore del server database del forum

Il confronto del livello di carico dei processori del server database del forum rispetto a quella di uno dei 6 server web mostra chiaramente come al momento attuale non vi siano particolari problemi di carico: anche nelle ore di massima richiesta il comportamento è lineare e non si hanno punte preoccupanti nella percentuale di occupazione delle cpu.

Il picco di carico osservabile attorno alle 3.30 di mattina è legato all'operazione di backup automatizzata dei dati; il database effettua quello che viene indicato come un dump del database, creando un grosso archivio contenente tutti i dati del database. Questo backup viene quindi trasferito via lan ad un altro server, destinato a memorizzare tutti i backup dei dati dei vari server che compongono la struttura.

mrtg_dbforum_utenti.gif (5982 bytes)
grafico MRTG del numero di utenti presenti sul forum

Del resto, è la linearità di carico uno degli elementi principali del database del forum di Hardware Upgrade: gli utenti collegati contemporaneamente, distinguibili dalla linea verde, sono sempre molto numerosi ma non si manifestano picchi particolari nel corso della giornata: in effetti il carico è sempre molto costante partendo dalle 10 di mattina sino all'1 di notte, con una crescita ed un calo ai due estremi altrettanto bilanciato.

196 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
Luxor8323 Luglio 2007, 09:36 #1
Davvero un articolo interessantissimo!
Lazza8423 Luglio 2007, 09:38 #2

Che figata

Bella visita del motore che fà girare hw upgrade, argomento interessante.
andrmat23 Luglio 2007, 09:39 #3
Bella rece, come al solito. Ottime soluzioni.

Peccato per 'evaquata'...

Vash8823 Luglio 2007, 09:43 #4
Finalmente riconosco il solito HWUP, bell' articolo, complimenti.
Pr|ckly23 Luglio 2007, 09:46 #5
Bell'articolo.
Di primo impatto ho trovato esagerato il cluster NLB a SEI nodi per il server web, evidentemente il carico di lavoro in termini di richieste è davvero imponente.
jerrygdm23 Luglio 2007, 09:52 #6
Articolo molto interessante, grazie per averci reso partecipi di quello che state facendo e delle soluzioni che usate...
Paolo Corsini23 Luglio 2007, 09:52 #7
Originariamente inviato da: andrmat
Bella rece, come al solito. Ottime soluzioni.
Peccato per 'evaquata'...

Argh, ecco cosa succede a fare l'ultima rilettura prima delle 9 di mattina
JiUli023 Luglio 2007, 10:02 #8
Complimenti, articolo esaustivo e molto interessante. grazie
andrmat23 Luglio 2007, 10:02 #9
Hahaha

Articolo pubblicato troppo presto, infatti...
Ora ho almeno un'intera giornata lavorativa prima del prossimo articolo
Devil!23 Luglio 2007, 10:03 #10
Articolo molto interessante, complimenti

e per la rete? che soluzione avete adottato?

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^