In questa serie di articoli vi spiegherò come creare un servizio PaaS scalabile ottimizzato per ospitare un blog in WordPress.
Il principio è ovviamente valido per qualsiasi sito PHP/MySQL, solo che WordPress è notoriamente un sistema pesante che quindi trarrà immediato beneficio da una simile configurazione.
Struttura del sistema
Per realizzare il sistema creeremo 3 VM su un cloud realizzato con OpenNebula con datastore su MooseFS. In totale utilizzeremo 4 CPU di cui 1 dedicata, 1,75 GB Ram e due dischi Datablock (uno per le pagine PHP e uno per il database).
- vm1 avrà il compito di ospitare fisicamente i file che compongono il sito in una partizione locale che sarà condivisa tramite NFS, di servire direttamente i file statici con nginx e di girare le richieste PHP agli application server sempre grazie ad nginx; inoltre fungerà da gateway per le altre VM;
- vm2 è l’application server che potrà essere duplicato nel caso in cui si richieda maggiore potenza di calcolo (maggiori connessioni contemporanee): per servire gli script PHP utilizzeremo nginx come frontend, che comunicherà con php-fpm che è un innovativo sistema di esecuzione di PHP, simile concettualmente al FastCGI ma molto più veloce. Su questo server installeremo anche memcached per distribire la cache e mysql-proxy come frontend verso i server MySQL;
- vm3 è il server mysql che potrà scalare in futuro aggiungendo slave server
Alla fine, proporremo anche come ottimizzare la velocità di WordPress attraverso l’installazione di opportuni plugin in grado di sfruttare l’infrastruttura realizzata. Alla fine della serie di articoli, questo blog sarà spostato su questa infrastruttura in modo che possiate valutare l’effettivo aumento di prestazioni generato da un simile sistema.
Stay tunes…
[...] Hosting scalabile per WordPress – presentazione [...]