Load Balancing.

Mauro Goretti

Load Balancing.

Garantire la possibilità di visualizzare il proprio sito in tempi decenti senza ricorrere alla pessima
pratica del “bes effort” dovrebbe essere tra le prime operazioni da eseguire quando si configura
un server Web. Le metodologie per farlo sono tante, ognuna con i suoi pro ed i suoi contro.
Quella che ci sembra più semplice ed al tempo stesso efficace è l'utilizzo di ModBandwidth.
Installiamola come finora fatto per ogni applicativo, ovvero adoperando il packages manager del
sistema ed abilitiamola:

# apt-get install libapache2-mod-bw
# a2enmod bw
Enabling module bw.
Run'/etc/init.d/apache2 restart' to
activate new configuration!

ModBandwidth può essere adoperata in modo da intervenire a livello globale (su tutti i siti eventualmente ospitati dal server) oppure, caratteristica ancora più interessante, direttamente a
livello Vhost, limitando singolarmente un determinato sito a valori di banda predefiniti. Per quanto
attiene alla configurazione intrapresa nel corso di questo articolo vedremo come attivarla a livello
globale dal momento che stiamo configurando il server per lavorare su un solo dominio.
Considereremo inoltre una capacità massima di Upload della linea pari a 2Mbps. Editiamo
nuovamente il file “/etc/apache2/sites-enabled/000-default” inserendo all'interno del blocco
<VirtualHost> le seguenti direttive, che commenteremo subito:

BandWidthModule On
ForceBandWidthModule On
BandWidth all 262144
MinBandWidth all 4096
LargeFileLimit * 10240 2048

Alla riga 1 abbiamo attivato il modulo, alla seconda imponiamo che ogni richiesta venga analizzata
dal load balancer. Alla terza abbiamo quindi impostato una banda massima utilizzabile pari a 2mbps garantendo, alla riga 4, un minimo di 32kbps per utente. All'ultima abbiamo limitato il download dei file superiori a 10Mb a 16kbps, privilegiando in questo modo la normale navigazione
web. Disabilitiamo la stampa del banner e dell'header HTTP da parte di Apache editando il file
/etc/apache2/conf.d/security”:

#vi /etc/apache2/conf.d/security
ServerTokens Prod
ServerSignature Off

Carichiamo quindi una pagina di prova per controllare il buon esito delle nostre operazioni ed avviamo Apache:

# cd /var/www/var/www/
# vi index.php
<?php
$db_host =”localhost”;
$db_user =”root”;
$db_password =”pippobaudo”;
if(mysql_connect($db_host,$db_user,$db_password)) {
echo “<h1>Installazione di Apache +PHP+MySQL avvenuta correttamente</h1>”;
}
?>
# /etc/init.d/apache2 start
Starting web server: apache2

Ora non ci resta che collegarci dal nostro browser a “localhost”.

Commenti

Post popolari in questo blog

INSTAFETCH - Android -

I pesci abissali. Zoologia marina.

La Centrale Idroelettrica.