Il lavoro di aggiornare i software che erogano i vari servizi web e database per un internet service provider come noi è molto delicato, con questo articolo vogliamo condividere con voi come abbiamo fatto ad accontentare tutti gli utenti aggiornando i software dei server web e database, migliorando nel contempo di gran lunga il servizio erogato.

La storia e l’esperienza insegnano

È la storia più vecchia del mondo, gli aggiornamenti sono sempre molto importanti per la sicurezza e le performance dei server di hosting, ma spesso creano dei problemi ad alcuni utenti che non mantengono aggiornati a loro volta i software utilizzati, come fare allora?

Secondo voi come si dovrebbe sentire un utente a cui da un momento all’altro viene detto: “Il suo software è troppo obsoleto per le nostre piattaforme, il suo sito non funzionerà più, e deve essere aggiornato, ah e lo dovrebbe fare ADESSO.”

Questa frase può scaturire una sola sensazione: panico. Quindi visto che non ci piace far venire gli infarti ai nostri clienti abbiamo deciso di adottare un’altra strategia.

L’interprete php

Quando ci siamo apprestati ad aggiornare la versione di php (all’epoca era la 5.3) e rendere disponibili le versioni 5.5 e 5.6, abbiamo pensato di farlo esclusivamente per quelle versioni dei cms aggiornate che lo avrebbero supportato, cercando di creare una specie di lista di compatibilità tra i vari software esistenti e php, ovviamente cercando di privilegiare le versioni di php più aggiornate.

Non è stato facile considerato che, come avevamo scritto in un vecchio articolo, i nostri utenti non utilizzano solo Joomla! Dopo circa 2 mesi di lavoro possiamo felicemente dire che l’80% dei siti web presenti sui nostri server di hosting gira con una versione aggiornata di php (5.5 oppure 5.6).

Ovviamente non è stato, come si dice, “un colpo=un morto”, ad esempio anche se la versione di Joomla! 2.5 è compatibile con la versione 5.5 di php, è capitato che alcune estensioni particolari di terze parti causassero una pagina bianca sul sito. Sono infatti stati gestiti circa 200 ticket di assistenza in cui il nostro team help desk ha aiutato tutti i clienti ad individuare l’estensione non funzionante, aggiornarla e rimettere il sito online.

Tutti gli utenti che utilizzano invece ancora una versione 5.3 di php (obsoleta e non più supportata) hanno ricevuto e stanno tuttora ricevendo suggerimenti per poter migrare alle versioni di joomla! o altri cms più aggiornate e possono richiedere in ogni momento il passaggio gratuito alle versioni di php più recenti in qualsiasi momento.

E il database?

Anche la versione di MySQL doveva essere aggiornata, ma perché non migliorare il servizio, durante un aggiornamento? Il nostro Responsabile del Reparto Ricerca & Sviluppo, Alessandro Fustini, ci spiega quali sono le motivazioni principali per cui abbiamo deciso di migrare le nostre 130 istanze database da MySQL a MariaDB e quindi di renderlo disponibile a tutti i nostri clienti:

“Una delle cose fondamentali per accedere velocemente ai dati in un database relazionale, sono gli indici sulle tabelle ma tutto questo è vero se il nostro database sa anche come utilizzare al meglio queste risorse. La parte che ha questa intelligenza si chiama ottimizzatore e ogni volta che si compiono operazioni sui dati, viene chiamato in gioco per cercare la strada migliore (leggiamolo come la più veloce) per eseguire l’operazione. MariaDB 10 ha un ottimizzatore nato dall’esperienza di MySQL con tantissime aggiunte proprietarie che ne fanno la differenza in termini di performance.

MariaDB e Joomla!: Amore a prima vista

La prima ottimizzazione molto utilizzata per Joomla! è quella di convertire trasparentemente le subquery in plain query con join che sono ottimizzabili usando gli indici disponibili sulle tabelle.

Anche il modo di leggere gli indici con alcuni engine è stato ottimizzato per cercare di esaminare meno dati possibili. Quando in Joomlahost ci siamo prefissati di migliorare le prestazioni del Database abbiamo prima fatto un meticoloso tuning dei numerosi parametri di configurazione su tutte le 130 istanze e poi preso dei casi reali per cronometrare i tempi di visualizzazione prima e dopo la migrazione a MariaDB 10.

In tutti i casi analizzati abbiamo riscontrato maggiori prestazioni e scalabilità con MariaDB 10 rispetto a MySQL, arrivando ad avere picchi di query al secondo di quasi il doppio superiori rispetto a MySQL. Naturalmente a seconda dei plugin presenti nell’installazione Joomla! questo numero può variare.

Un’altra cosa che ci ha aiutato molto come provider di hosting condiviso è la gestione del pool delle connessioni, che permette di avere un gran numero di connessioni attive al Database senza un forte degrado di prestazioni.

Per i più curiosi, sul blog ufficiale di MariaDB ci sono altri test e prove per quanto riguarda le prestazioni in generale di questo DB“.

Contenti tutti

In conclusione, sappiamo che gli update software sono necessari per mantenere sempre aggiornate le piattaforme in termini di sicurezza e di prestazioni e che spesso i vari internet provider sono “accusati” di eseguire queste operazioni troppo bruscamente per gli utenti, noi crediamo di aver trovato una via di mezzo e di essere riusciti a migliorare il servizio, rispettando gli utenti e..facendo il nostro lavoro, lasciate le vostre impressioni nei commenti!


Corso Svizzera 185 - 10149 - Torino
800 943 944
[email protected]