Categorie
Blog

La mia intervista con Marco Montemagno

Lo scorso 16 maggio 2020 è uscita la mia intervista assieme a Marco Montemagno in merito al Dropshipping. Un ringraziamento a Shopify, nello specifico a Paolo Picazio (Country Manager Italia di Shopify) che ha creato l’opportunità di questa intervista.

Categorie
Blog

I Perchè dell’Ecommerce

Dobbiamo aprire il canale ecommerce perchè al giorno d’oggi tutte le aziende lo hanno.

Affidiamoci al canale eCommerce perchè ci permetterà di aumentare e/o salvare le vendite.

L’ecommerce non vende abbastanza; apriamo ai marketplaces.

Quale è il nostro prossimo tentativo?

Con questo articolo provo dare un consiglio a tutti coloro che vedono la tecnologia come un fine o un’ancora di salvataggio ai problemi aziendali; trovare una soluzione semplice ai nostri problemi può sembrare la pillola salva problemi, ma quando si tratta di problemi complessi, una soluzione veloce, ahimè, non c’è.

Quello che chiedo sempre al cliente, prima di partire, è di sedersi al tavolo per 4 o 8 ore, per creare assieme a tutti gli interessati, un’idea condivisa e potente che sarà la stella polare del progetto ecommerce dei prossimi 2 o 3 anni. 

Nel mio studio ho un poster del “Golden Circle”, una teoria di Simon Sinek che dice che i clienti non comprano ciò che fai, ma comprano il perché lo fai.

Tutte le aziende sanno “cosa” producono, siano essi prodotti o servizi; le stesse aziende sanno “come” produrre questi prodotti e servizi; pochissime aziende però conoscono “il perché” esse vendono i loro prodotti o servizi.

Simon Sinek dice che concentrarsi sul perchè, fa elevare l’azienda e le motivazioni che ci stanno dietro ad un livello molto più alto, poiché la riflessione sui perchè va a colpire e fare vibrare la parte più irrazionale ed istintiva di noi stessi; ed è proprio questa parte del nostro cervello che prende le decisioni istintive dell’acquisto di prodotti e/o servizi.

Prendendo tutto quello che di buono c’è in questa teoria, adesso dobbiamo tornare però con i piedi per terra cercando di “pensare al nostro ecommerce, prima di realizzarlo”, cercando di elencare i perchè e le motivazioni che stanno alla base del progetto digitale.

Vi confido una cosa intima: andare a pensare al nostro perchè è tanto “potente” quanto “pauroso” perchè mette a nudo le nostre emozioni ed i nostri desideri; l’esperienza che si ha quando si va a pensare ai perchè molte volte va mettere alla luce come “il fine” che si vuole ottenere, in realtà sia solo un mezzo.

Il problema dopo tutto ciò? 

E’ che se il fine diventa il mezzo, molte volte si rimane a corto del fine e quindi di uno scopo preciso….ed è là che la desolazione “personale ed aziendale” si fa vedere.

Allontanandoci dai “perchè” psicologici, possiamo provare ad elencare qualche domanda del perché che ci possiamo porre prima di affidare le nostre vendite al canale digitale:

  • perchè usare lo strumento digitale dell’ecommerce?
  • perché voglio fare un ecommerce?
  • perchè i potenziali clienti dovrebbero visitare il mio sito ecommerce?
  • perché i clienti devono comprare i miei prodotti online?
  • perché i potenziali clienti dovrebbero preferire i miei prodotti rispetto ad altri marchi?
  • perché i navigatori online dovrebbero conoscere il mio brand?

Questa è solamente una piccola lista che ci porta al punto cruciale: ecommerce è una parola che erroneamente viene scambiata per tecnologia, ma che invece è sinonimo di “azienda/impresa”.

Quindi come possiamo dare risposta a tutti questi perché?

Semplicemente ripartendo dalle basi, ovvero dalla definizione della strategia di marketing ecommerce che si basa sui seguenti 5 pilastri:

  1. Opportunità e segmentazione
    • analizzare le opportunità del mercato e dividere il mercato in segmenti con variabili geografiche, demografiche, psicografiche (valori ed interessi) e comportamentali. Alcuni metodi per fare questo sono “le 5 forze di porter”, “analisi pester”, “analisi swot” e “la catena del valore”.
  2. Mercato obiettivo
    • definire quale mercato e segmenti di questo servire con i propri prodotti o servizi. Una strada da seguire può essere quella di iniziare con un “business model canvas” passando poi alla definizione di un  “business plan”.
  3. Posizionamento
    • definizione del proprio posizionamento del brand ovvero le caratteristiche, i vantaggi e la differenziazione dei prodotti prodotti/servizi sul mercato. Alcuni metodi sono il “brand positioning statement”, “il ritratto cinese”, “prisme d’identità di kapferer”, 
  4. Piano d’azione
    • definizione dei passi che si vogliono intraprendere per fare incontrare la domanda e l’offerta. Questa è la definizione della propria strategia di marketing; è qua che si va creare l’ecommerce come canale di distribuzione della merce, collegandolo possibilmente agli altri canali (social, retail, ecc..) per ottenere una buona strategia multi ed omnicanale.
  5. Controllo
    • la raccolta, il monitoraggio e le azioni successive che si vogliono intraprendere per capire lo stato di salute del business. La fase di controllo è una fase importantissima basata sulla raccolta dati, analisi di questi e conseguente azione. Questa fase è iterativa ed infinita. Una volta avviato un ecommerce, questa fase ha un inizio e non ha fine.

La realizzazione della piattaforma ecommerce si può inserire al punto 4 della strategia di marketing che abbiamo sopra elencato.

Se ancora non siete convinti che analizzare i “perchè” prima di intraprendere la strada dell’ecommerce, allora vi potrà convincere il fatto che i costi di marketing sostenuti dalla aziende che “pensano” in modo accurato i 5 punti della strategia di marketing precedente, si riducono del 65% rispetto a coloro che invece agiscono prima di pensare.

Per ultimo vi lascio al vostro perchè “animale”; quel perché che fa sì che vi alziate la mattina… 

Per molti questo perché è il denaro; non ci dobbiamo vergognare a dirlo ad alta voce.

Per altre persone il perché è la fama ed il successo, altre volte …. per altre il potere o il comando.

Ma e’ quando il perchè diventa “ibrido” che si ottengono i migliori risultati, ovvero quando la volontà imprenditoriale del magine è spinta da quella voglia di cambiare il mondo o anche solamente quello che abbiamo di fronte ai nostri occhi.

Categorie
Blog

Tendenze Shopping Online 2020 (covid-19)

Ecco a voi una infografica realizzata da Payplug in merito alle tendenze di acquisto 2020:

Infografica acquisti online 2020 - covid

Qua il link per l’articolo completo:

https://blog.payplug.com/it/infografica-tendenze-shopping-online-2020

Categorie
Blog

Soluzioni POS (point of sale) per Magento

Parlare di POS (dall’inglese “Point of Sale”), significa fare riferimento ad un sistema di pagamento elettronico che ha avuto una crescita incredibile negli ultimi anni, sostituendo altri metodi più tradizionali grazie alla sua semplicità.

Un esercente, per poter operare con il POS, deve installare un terminale apposito, da collegare alla rete telefonica. Quando il cliente effettua un pagamento, la carta utilizzata si connette al centro che gestisce il servizio, per l’autorizzazione del pagamento stesso. L’esercente, invece, vede accreditato il proprio conto corrente automaticamente.  

Con lo sviluppo dell’e-commerce, per molti operatori è diventato necessario ricorrere ad una strategia multichannel, ossia basata sulla moltiplicazione dei canali di vendita: da quella effettuata sul sito web alla vendita sui canali sociali, che si affiancano, tra le altre, alle vendita su catalogo e telefoniche.
È stata la piattaforma e-commerce Magento a consentire a molte imprese di realizzare il proprio negozio online. I suoi punti di forza sono l’ampia libertà di gestione e di vendita e le molte possibilità di espansione.

È possibile fare ricorso ai moduli POS per Magento, ossia a moduli aggiuntivi attraverso i quali gli store online possono operare nel circuito POS offrendo ai clienti livelli di sicurezza elevatissimi e permettendo di completare la fase dell’acquisto direttamente dal portale ecommerce. Si tratta in pratica di un acquisto da negozio, pagato tramite il lettore di carte, inviato però direttamente sulla piattaforma E-commerce Magento come se fosse un ordine arrivato da web.

Quali sono i vantaggi?

In primis non è necessario sincronizzare gli ordini tra svariati gestionali, appunto perchè è proprio l’ecommerce ad essere l’accentrato di tutto; in secondo luogo l’ecommerce diventa l’attore centrale che unisce il negozio fisico al negozio online.

Tra le diverse soluzioni pensate per integrare il POS a Magento ecco una veloce lista:

  • Web Admin Pos che permette di creare ordini tramite amministrazione direttamente in Negozio: http://www.magestore.com/magento-pos-integration-extension.html
  • POS solution di Ebzmarts compatibile con svariati registratori di cassa: https://pos.ebizmarts.com/
  • POS system di IWD: https://www.iwdagency.com/extensions/magento-pos-system.html

 

Per qualunque informazione o se volete integrare una soluzione POS in magento, contattateci.

Categorie
Blog

Ottimizzare i propri feed verso gli aggregatori di prodotti online: DataFeedWatch

Se avete molti feed prodotti saprete già che mantenerli ed ottimizzarli è un costo. In particolare capire se conviene investire o meno nei feed prodotto è un argomento non banale.

In velocità vi mostro un software che si interpone tra il vostro e-commerce ed i feeds prodotti (sono disponibili quasi la totalità dei canali, tipo google shopping, kelkoo ecc…) e vi permette di analizzare ed ottimizzare i feed, stoppando le campagne a bassa rendita ed ottimizzando quelle che al contrario stanno spingendo di più.

Ecco il link al sito:

 

http://www.datafeedwatch.com/

Categorie
Blog

Magento Community Edition Vs Magento Enterprise Edition: cosa scegliere?

Quando si decide di far crescere il proprio business e di avviare un e-commerce, la prima scelta importante da intraprendere riguarda la tipologia di piattaforma sulla quale si baserà poi l’intera struttura del futuro store online. Per questo motivo Magento ha messo a disposizione due versioni distinte: Magento Community Edition e Magento Enterprise Edition.

Una delle domande che mi vengono poste più frequentemente è: che cosa differenzia le due versioni e qual’è quella più adatta alle mie esigenze? Cerchiamo di rispondere insieme.

Magento Community Edition

Tutte le versioni di Magento hanno le stesse radici e si basano sulla medesima base di codice, rappresentata da Magento Community. La versione è Open Source: questo significa che chiunque è libero di scaricarla e di inserirvi le modifiche di cui ha bisogno per iniziare a strutturare il proprio e-commerce. L’aiuto della community di Magento, connessa sul Forum del sito ufficiale, è inoltre in grado di offrire assistenza e supporto in caso di necessità.

La piattaforma presenta principalmente le seguenti caratteristiche:

• Gestione cataloghi e prodotti

• Multivaluta, Multilingua, Multistore

• Ricerche avanzate, comparazione prodotti

• Prodotti singoli, raggruppati, configurabili, scaricabili, virtuali

• Strumenti di marketing e gestione promozioni

• Ottimizzato per i motori di ricerca

• Checkout ordini, spedizioni, fatture

• Gestione magazzino

• Gestione pagamenti e spedizioni

• Gestione ordini, storico ordini e tracking dell’ordine

• Wishlist e invia ad un amico

• Ottimizzato per il mobile

• API e Web Service per integrazioni ed espansioni

Può essere necessario inserire delle personalizzazioni ad hoc o delle estensioni per migliorare le funzionalità della piattaforma. La versione Community permette senza grandi sforzi di effettuare tali modifiche, ma l’aggiunta di moduli in un secondo momento offre una qualità minore in termini di performance.

Magento Enterprise Edition

Alcuni rivenditori hanno bisogno di funzionalità avanzate, customizzazioni elevate ed un supporto costante da parte di sviluppatori esperti. Per questo motivo nasce Magento Enterprise Edition, disponibile attraverso un costo di licenza annuale e in grado di offrire una grande quantità di caratteristiche aggiuntive. Di seguito riporto le principali:

• Funzionalità CMS avanzate

• Caching avanzato per siti con grandi volumi di traffico

• Complesse logiche di permessi per il backend

• Gestione private sales, eventi, sconti

• Possibilità di segmentazione dei clienti

• Loyalty system

• E-mail marketing reminders automatici

• RMA

• Vendite private e vendite a tempo

• Logging delle azioni degli amministratori

Per quanto riguarda le performance, Magento è spesso noto per essere un software estremamente funzionale, ma con la problematica di essere molto “pesante”, richiedendo quindi un server potente per funzionare in modo ottimale. La Enterprise Edition si propone di risolvere questo problema. Il know how su come far funzionare velocemente la piattaforma viene quindi rilasciato solo con questa versione.

In base a quale criterio conviene scegliere allora?

La scelta dipende da molteplici fattori e non c’è una vera e propria regola da seguire: in primis si devono valutare le dimensioni dell’azienda, il mercato al quale ci si rivolge (Italia, Europa, Usa…) ed il target di riferimento (business to business o business to costumer).

Alcuni esempi pratici possono aiutare a capire la varietà di casistiche ed elementi da tenere in considerazione.

Se si è un piccolo store specializzato nella vendita di prodotti di alto livello, l’uso di Magento Community potrebbe essere la soluzione più indicata: non si hanno grossi investimenti iniziali e le funzionalità di base sono tutte presenti. Bisogna però tener presente il fatto che, nel caso in cui si avessero dei dubbi, l’affiancamento attraverso la Community Magento viene svolto da volontari, che non sempre hanno il tempo e le conoscenze per rispondere a tutte le esigenze. In ogni caso, per progetti esplorativi a basso budget e con l’aiuto di un programmatore di buona esperienza, la scelta della Magento Community Edition può essere vincente.

Diverso è il caso per una grande azienda, che normalmente presenta un considerevole traffico su sito, un catalogo molto ampio e variegato ed il desiderio di fornire un servizio rapido e agile ai propri clienti. In questo caso, per ottenere prestazioni di alto livello e qualità ottimale, la soluzione Magento Enterprise Edition potrebbe essere ideale.

Categorie
Blog

L’evoluzione di Internet in 10 anni

Ecco una interessante infografica che mostra come si è evoluto internet in 10 anni!!

Categorie
Blog

Misurare le performance del codice Magento

In questo breve post vi mostrerò come misurare le performance del vostro codice Magento, in modo tale da capire quali sono le parti che richiedono più memoria o tempi di caricamento lunghi; in base a questo riuscirete a scovare questi “buchi neri” del codice e quindi ad evitare tutto ciò che rende gli e-commerce lenti, poco usabili e poveri in termini di vendite.

La piattaforma Magento ha preinstallato di default il profiler di sistema, ovvero un tool che se attivato mostra il tempo che impiegano le varie chiamate e la memoria che queste utilizzano.

Per attivare il profiler è necessario andare in Sistem -> Configuration -> Advanced -> Developer -> Debug -> Profiler ed impostarlo a Yes.

Andate poi nel vostro index.php nella root del magento e decommentate la linea Varien_Profiler::enable();.

Questa istruzione abiliterà il profiler di magento che apparirà in ogni pagina sotto al footer, ecco a voi uno screenshot del profiler:

Esistono casi in cui volete testare le performances solamente di alcune chiamate o parti di codice, per capire l’impatto che queste avranno sul vostro sito o sulla velocità di risposta; come fare in questi casi?

La soluzione è uno script Magento (passatemi il termine) con incorporato il profiler magento che analizza le chiamate ed il vostro codice.

Ecco qua l’esempio di codice che carica alcuni ordini e mostra i risultati a schermo:

[sourcecode language=”php”]
<?php

error_reporting(E_ALL);
ini_set("display_errors", 1);

require_once ‘app/Mage.php’;

Varien_Profiler::enable();

$app = Mage::app(”);

try {

Varien_Profiler::start(‘Profiler::Load::Order’);
$read = Mage::getSingleton(‘core/resource’)->getConnection(‘core_read’);

$value = $read->query("SELECT * from catalog_product_entity");
$results = $value->fetchAll();

foreach ($results as $res) {
$order = Mage::getModel("sales/order")->load($res["entity_id"]);
}

Varien_Profiler::stop(‘Profiler::Load::Order’);

$timers = Varien_Profiler::getTimers();

#$out = ‘<div style="position:fixed;bottom:5px;right:5px;opacity:.1;background:white" onmouseover="this.style.opacity=1" onmouseout="this.style.opacity=.1">’;
#$out = ‘<div style="opacity:.1" onmouseover="this.style.opacity=1" onmouseout="this.style.opacity=.1">’;
$out = "<h1>Profiler</h1>";//"<a href=\"javascript:void(0)\" onclick=\"$(‘profiler_section’).style.display=$(‘profiler_section’).style.display==”?’none’:”\">[profiler]</a>";
$out .= ‘<div id="profiler_section" style="background:white; display:block">’;
$out .= ‘<pre>Memory usage (bytes): real: ‘ . memory_get_usage(true) . ‘, emalloc: ‘ . memory_get_usage() . ‘</pre>’;
$out .= ‘<pre>Memory usage (Mega): real: ‘ . doubleval(memory_get_usage(true) / 1048576) . ‘, emalloc: ‘ . doubleval(memory_get_usage() / 1048576) . ‘</pre>’;
$out .= ‘<table border="1" cellspacing="0" cellpadding="2" style="width:auto">’;
$out .= ‘<tr><th>Code Profiler</th><th>Time</th><th>Cnt</th><th>Emalloc</th><th>RealMem</th></tr>’;
foreach ($timers as $name => $timer) {
$sum = Varien_Profiler::fetch($name, ‘sum’);
$count = Varien_Profiler::fetch($name, ‘count’);
$realmem = Varien_Profiler::fetch($name, ‘realmem’);
$emalloc = Varien_Profiler::fetch($name, ‘emalloc’);
if ($sum < .0010 && $count < 10 && $emalloc < 10000) {
continue;
}
$out .= ‘<tr>’
. ‘<td align="left">’ . $name . ‘</td>’
. ‘<td>’ . number_format($sum, 4) . ‘</td>’
. ‘<td align="right">’ . $count . ‘</td>’
. ‘<td align="right">’ . number_format($emalloc) . ‘</td>’
. ‘<td align="right">’ . number_format($realmem) . ‘</td>’
. ‘</tr>’
;
}
$out .= ‘</table>’;
$out .= ‘<pre>’;
$out .= print_r(Varien_Profiler::getSqlProfiler(Mage::getSingleton(‘core/resource’)->getConnection(‘core_write’)), 1);
$out .= ‘</pre>’;
$out .= ‘</div>’;

$totalTime = 0;
foreach ($timers as $timer => $ti) {
$sum = Varien_Profiler::fetch($timer, ‘sum’);
$totalTime = doubleval($totalTime) + doubleval($sum);
}
echo $out . "<br/><br/>";
echo "Execution time in seconds: " . $totalTime;
} catch (Exception $e) {
echo $e->getMessage();
Mage::printException($e);
}
?>

[/sourcecode]

Questo è il risultato dello script; come potete notare la parte incapsulata dentro le chiamate “Start” e “Stop” del profiler  è quella che si occupa di racchiudere tutte le chiamate che vengono fatte al suo interno (nel nostro esempio la query degli ordini ed il loro caricamento). Il risultato nel profiler avrà il nome passato al profiler ovvero Varien_Profiler::stop('Profiler::Load::Order');

Categorie
Blog

Icecat: integrazione su Magento

Icecat è il famoso catalogo di prodotti di elettronica disponibile gratuitamente online.

I maggiori produttori di componenti elettronici ed informatici (come HP, Samsung, Intel, Symantech ecc..) inviano in modo continuo il catalogo dei propri prodotti a questo raccoglitore globale che li raggruppa in modo standard e li mette a disposizione di tutti coloro che ne hanno bisogno. Le caratteristiche/dettagli prodotto che questo catalogo globale mette a disposizione sono:

  • Nome del prodotto
  • Nome del produttore
  • Codice del produttore
  • Categoria prodotto
  • Immagini del prodotto
  • Descrizioni in lingue diverse
  • Specifiche tecniche standard
  • Manuali
  • Opzioni (prodotti correlati)
  • Peso
  • Codice EAN

Come possiamo utilizzare Icecat? Ecco un esempio: tutti coloro che vogliono inserire nei propri siti e-commerce la lista di tutte le stampanti disponibili nel mercato possono interrogare Icecat ed ottenere in formato elettronico il catalogo completo di tutti i modelli.

Icecat mette a disposizione delle api per interrogare il suo database prodotti o delle url per reperire informazioni prodotto; inoltre per chi non volesse scaricare l’elenco completo dei prodotti sul proprio sito o e-commerce Icecat mette a disposizione metodi per ottenere nomi, immagini e descrizioni prodotto da caricare direttamente dal loro catalogo online.

Questo è proprio quello che abbiamo fatto: integrare il catalogo Icecat con la piattaforma Magento!

Per l’integrazione di Icecat su Magento abbiamo utilizzato il modulo Icecat Live presente sul Magento Connect; il modulo ha qualche bug che abbiamo però risolto ed il risultato è stato una perfetta integrazione tra il catalogo Icecat e l”ecommerce Magento.

Di quali informazioni abbiamo avuto bisogno?

Sul catalogo prodotti Magento è necessario inserire solamente il codice che identifica il prodotto su Icecat; per farlo è stato necessario inserire su Magento, al posto dello sku del prodotto, il codice identificativo di quel prodotto presso il produttore; faccio un esempio: prendiamo la stampante laser HP LaserJet Pro P1102. Il suo codice identificativo presso il suo produttore HP e presso Icecat è CE651A. Inserendo nello sku prodotto questo codice e mappando lo sku di Magento su questo codice il gioco è fatto.

Ma cosa è questo codice?
Il codice con il quale Icecat mappa i suoi prodotti è chiamato MPN, ovvero il  Manufacturer Part Number.

Nella configurazione del modulo è bastato associare l’MPN al nostro sku ed il modulo, e con qualche piccolo ritocco ha iniziato a funzionare!

Questo è il prodotto su HP con MPN CE651A su Icecat: HP LaserJet Pro P1102

Vediamo adesso come si presenta il prodotto sul nostro Magento di prova installato appositamente per testare e fare funzionare l’integrazione con Icecat.

Ecco il primo risultato, ovvero il prodotto nella lista prodotti della categoria (come potete vedere il prodotto prende da Icecat il nome e l’immagine):

Ed infine la scheda prodotto con le immagini e i particolari tecnici/descrittivi caricati tutti direttamente da Icecat.

 

 

 

 

 

 

 

 

 

 

 

Per tutti coloro che vogliono un catalogo pieno di prodotti, o per tutti coloro che vogliono aggiungere ai propri prodotti descrizioni complete ed esaustive consiglio vivamente di integrare la piattaforma Magento con il famoso catalogo prodotti di elettronica Icecat.

Categorie
Blog

Magento e Amazon Cloudfront CDN

Un Content Delivery Network, o CDN, è un sistema distribuito di server che offrono il servizio di “inviare files/contenuti” in modo efficacie ed efficiente, quindi ad elevate prestazioni.

A cosa può servire un cdn?

Un cdn serve per velocizzare le performance della vostra piattaforma, sito o e-commerce sostituendosi al vostro server nell’invio dei file che voi gli date. In pratica invece di chiamare il vostro dominio per lo scaricamento di un immagine, ex: http://www.vostrodominio.com/immagine.jpg il vostro sito chiamerà il cdn, che non è altro che una copia dei vostri file, all’url http://www.cdn.com/immagine.jpg.

Il cdn, risponderà con tempi molto minori, con una capacità di banda molto maggiore e farà in modo che il caricamento della vostra pagina sia molto più veloce.

Questo è tutto.

In questo articolo vedremo con fare lavorare Magento con uno dei più famosi cdn, ovvero il servizio di Amazon CloudFront.

Questo servizio è un servizio ad iscrizione gratuita, ma con pagamento a seconda della quantità di dati che vengono richiesti; ecco la tabella dei prezzi.

PASSO 1

Si inizia registrandosi ad Amazon Web Services, si entra poi in Cloudfront e si accede alla console (alla registrazione viene chiesta la carta  di credito, senza la quale non è possibile registrarsi).

Una volta entrati nella console di Cloudfront si inizia a creare una distribuzione, ovvero una copia dei vostri file su Cloudfront:

PASSO 2

Dopo avere creato la distribuzione, è necessario configurarla, in modo che questa riesca in maniera del tutto automatica a scaricare dal vostro sito i file che dovrà fare scaricare ai vostri visitatori. E’ il momento di scegliere il “delivery method”:

PASSO 3

E’ il momento di configurare il nostro CDN, impostando il nome del nostro dominio ed i vari paramentri necessari; in realtà è necessario inserire solo il nome di dominio se non si è molto pratici della cosa e al resto pensa tutto Cloudfront (se insicuri lascaire i parametri di default):

PASSO 4

Dopo avere creato la “distribuzione”, ovvero la copia il servizio si prenderà una decina di minuti per configurarsi; la creazione della distribuzione genererà un nuovo nome di dominio del tipo:
d34y234asa3dfa234b6qr1j5d.cloudfront.net

una volta pronto potrete attivare il cdn all’interno del magento.

Basterà andare in

System -> Configuration -> General -> Web -> Tab Unsecure

ed impostare la url del cdn nei campi Media Url, Skin Url e Js Url come nella seguente immagine:

Salvate ed il gioco sarà fatto.

Se poi andate ad analizzare il sorgente del vostro codice, oppure come ho fatto io, se utilizzate Firebug per vedere i tempi di caricamento del vostro e-commerce noterete che le richieste saranno servite dalla vostra nuova e performante cdn.

IL TEST DELLE PERFORMANCE

Per ultimo, sono andato a misurare le performance del magento giocattolo installato sul mio server. Ecco alcuni dati riguardanti l’ambiente:

Server vps con 512MB di ram

Magento con cache abilitata e compilazione disabilitata

Server non ottimizzato per magento (nessuna ottimizzazione a livello di php, apache e mysql)

Ho fatto il test su questo magento appunto per capire in che modo un cdn possa pesare su un magento fresco di installazione e non ottimizzato (Attenzione: le prestazioni dipendono molto anche dal server e dalla banda quindi questi dati sono reali e significativi per questo mio ambiente di prova; la situazione può cambiare da server a server).

Aprendo la schermata generata dal caricamento della pagina visto attraverso firebug, ed incollando assieme la parte dei tempi di caricamento del test effettuato con CDN e quello effettuato senza CDN, ecco il risultato:

I RISULTATI

Come potete vedere già dall’immagine sopra, i tempi di caricamento sono un 20, 30% più veloci. Ecco però i risultati del tempo di caricamento dell’home page del mio sito di prova (il risultato in secondi è stato fatto eseguendo il caricamento della pagina con firefox 5 volte premento Ctrl + F5 per bypassare la cache del browser):

Alcuni dettagli:

E’ possibile impostare un nome di dominio per la distribuzione del CDN: basterà specificarlo nel campo CNAME delle opzioni di amazon Cloudfront e puntare il dns del proprio host per poter accedere al cdn con il nome http://cdn.propriodominio.com invece che d34y234asa3dfa234b6qr1j5d.cloudfront.net

Problema con javascript: non ho fatto test, ma attenzione al caricamento di file javascript da dominio esterni; ci sono restrizioni a causa del caricamento di codice “cattivo” da domini esterni; fate dei test!!!

Aggiornamento dei file nel CDN: i file all’interno del CDN hanno una scadenza, dopo la quale, questi verrano scaricati nuovamente; quindi se aggiornate nel vostro sistema una immagine, questa sarà replicata all’interno del CDN alla sua scadenza; è inoltre possibile fare scadere degli oggetti del cdn; per una guida completa è possibile consultare la guida di Amazon Cloudfront: http://docs.amazonwebservices.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html