Velocizzare Magento durante il Blackfriday!
Perchè preparare il proprio #server #magento ad un flusso massivo di visitatori/clienti durante il #blackfriday ? Anche se sembra una domanda retorica, per molti esercenti non esperti di sistemi informatici è fondamentale.
Il blackfriday è l'evento che coinvolge milioni di aziende nel mondo durante un determinato periodo dell'anno, solitamente una settimana durante il "Giorno del Ringraziamento" negli USA, nel quale si offrono i propri servizi/merci ad un prezzo vantaggioso applicando degli sconti alle volte molto alti.
Durante questa settimana molti visitatori tentano l'acquisto sui portali eCommerce navigando freneticamente alla ricerca dello sconto, promozione tanto desiderato per il prodotto che avevano adocchiato ad un prezzo per loro inaccessibile.
Quindi durante i sette giorni di promozione i visitatori solitamente aumentano anche senza effettuare una campagna pubblicitaria ad-hoc, solamente con le "ricerche organiche" di google e degli altri motori di ricerca.
Il proprio sito eCommerce deve essere pronto molto prima dell'inizio della settimana del Black Friday così da poter programmare un'ottimizzazione dei contenuti e soprattutto dell'infrastruttura server, che deve rispondere ad un carico di lavoro non usuale.
Tale operazione potrebbe essere vista come la preparazione della vostra auto per un grande viaggio. Quindi si andrà dal meccanico per chiedere consiglio per un controllo approfondito del motore dell'auto, così come ogni parte fodamentale dell'intera auto.
La preparazione della vostra "auto" deve avvenire anche se l'avete appena acquistata, poichè anche se nuova bisogna controllarne il corretto funzionamento sotto un "carico" differente dal solito. Tale operazione viene definita: "Ottimizzazione dei carichi".
L'ottimizzazione dei carichi di lavoro sono fondamentali per un sito eCommerce poichè si tratta di migliorare le prestazioni del software e dell'hardware. Alcune ottimizzazioni possono essere, e potremmo dire che dovrebbero essere, gestite direttamente dall'esercente, altre invece hanno bisogno di essere gestite da tecnici specializzati.
Quali operazioni un esercente che possiede un eCommerce Magento può fare in completa autonomia?
Ve ne sono moltissime! Qui di seguito alcuni suggerimenti:
1. Rivedere le foto caricate e migliorarne in qualità e peso.
2. Cancellare/Disabilitare i prodotti non più in vendita o poco appetibili.
3. Migliorare le descrizioni dei prodotti ed i loro attributi
4. Migliorare il set di attributi dei propri prodotti
5. Cancellare gli attributi inutili o poco utilizzati
6. Impostare la ricerca dei prodotti solamente per alcuni attributi
7. Migliorare l'esposizione delle categorie
8. Migliorare i contenuti statici descrivendo le prassi commerciali adottate
9. Mantenere attiva la chat di supporto con la propria clientela per comprendere se vi sono difficoltà durante la navigazione.
10. Disattivare alcune funzionalità poco utilizzate dal pannello di controllo di magento.
Successivamente serve un'ottimizzazione del server e delle componenti che permettono a Magento di sfruttare al massimo la sua potenza. Le ultime versioni di Magento offrono molte funzionalità ed ognuna di essa comporta un piccolo carico sul server.
Cosa succederebbe se tale ottimizzazione non venisse programmata prima del black friday?
Quindi decidiamo di NON eseguire alcuna ottimizzazione ed il black friday è alle porte. Inizialmente non vedremmo alcun problema ma il server incomincerebbe ad accumulare le richieste effettuate da motori di ricerca, siti comparatori prezzi, google merchant, social network, e visitatori. Il carico di lavoro aumenterà giorno dopo giorno.
Durante la settimana del black friday noteremo alcuni rallentamenti ma non gli daremo tanta importanza poichè attribuiremo il problema ad altri fattori come ad esempio, la propria connessione dati.
Il server magento utilizza un "sistema vivo" chiamato "Crontab". Cosa è un Crontab?
Nei sistemi operativi Unix e Unix-like, il comando cron consente la pianificazione di comandi, ovvero consente la registrazione di questi presso il sistema per essere poi mandati in esecuzione periodicamente in maniera automatica dal sistema stesso. Lo stesso nome «crontab» si riferisce anche ai file utilizzati dal comando crontab come «registri» dei comandi pianificati. (fonte wikipedia)
Quindi tutte le operazioni come la reindicizzazione dei dati dei prodotti, ordini, clienti, e di tutti i dati delle estensioni e l'aggiornamento periodico di alcune cache di Magento vengono eseguite durante l'arco delle 24 ore per 365 giorni l'anno.
Tali operazioni sfruttano le risorse del proprio server che sono "determinate" dagli elementi in esso contenuti come processore, ram, tipologia del disco rigido, connessione alla rete internet. Dunque il sistema normalmente ha già un carico di lavoro costante quotidiano importante.
Le operazioni del Crontab si accumulano una dopo l'altra creando una coda che dovrà essere eseguita per poter mantenere in ordine tutti i dati di Magento.
Adesso siamo dentro la settimana del black friday e prossimi alla scadenza dell'evento. Il server già carico di lavoro pregresso si vede un sovraccarico durante gli ultimi giorni.
I primi sintomi sono piccole disconnessioni del database MySQL che non riesce a supportare la mole di richieste (query) effettuate al negozio. Successivamente i blocchi si faranno sempre più frequenti ed il sito non risponderà più all'apertura andando in timeout. Nella peggiore dei casi, quando ci si accorge troppo tardi, il server non è accessibile per via delle risorse mancanti. Non sarà possibile persino l'accesso come amministratore via terminale.
Chiaramente il lavoro da svolgere non deve assolutamente essere eseguito durante il blackfriday si avrebbe una cattiva pubblicità per la lentezza del server o peggio i blocchi dovuti alla mancanza di risorse. Per questo vi consigliamo sempre di preparare e far ottimizzare il vostro server Magento PRIMA DEL BLACK FRIDAY per poter promuovere e di conseguenza vendere i prodotti del vostro negozio.
... e cosa succederà al vostro negozio durante il Cyber Monday?