Usa Magento se sei serio sull'eCommerce

Pubblicato: 2022-03-11

Potresti aver sentito che Magento è la piattaforma di eCommerce che usi se sei serio riguardo alla tua attività e sei serio riguardo alla tua attività, quindi hai deciso su Magento.

Ma sai in cosa ti stai cacciando?

Magento è un programma incredibilmente potente. Un blogger che ho letto l'ha paragonato a un Leatherman, perché aveva uno strumento per ogni uso. Mi piace pensarlo più come uno di quei grandi telecomandi universali che le persone compravano che apparentemente avevano un centinaio di pulsanti programmabili in grado di controllare ogni dispositivo multimediale della loro casa.

Può fare qualsiasi cosa se, e solo se, sei disposto a dedicare tempo e denaro per realizzarlo. Magento è fantastico, lo è davvero, ma è anche complesso. Sei disposto a dedicare del tempo a istruire i tuoi clienti (o sono abbastanza esperti da insegnare a se stessi) come utilizzare il pannello di amministrazione incredibilmente potente di Magento? In caso contrario, potresti voler guardare un'altra soluzione.

Magento è un sistema esperto. Proprio come i vari prodotti Adobe, come Photoshop e Illustrator, premia l'esperienza, ma a costo di una curva di apprendimento ripida. All'inizio può essere estenuante, ma con un po' di lavoro diventa uno strumento potente.

Per la tua azienda, questo si traduce in un hosting più costoso (spese $ 300 al mese per l'hosting AWS ti spaventa?), costi di sviluppo più elevati e più tempo di lavoro iniziale per comprendere le funzionalità amministrative, ma una volta superati questi ostacoli, hai una piattaforma che è infinitamente espandibile e scalabile.

Grazie alla flessibilità e alla capacità di scalabilità di Magento, la tua attività non supererà presto Magento e, in tal caso, farai così tanti affari che avrai abbastanza successo per affrontare la fase successiva dell'evoluzione dell'eCommerce.

Magento è la piattaforma di eCommerce leader, con circa il 30% del mercato.

Magento eccelle (e, in effetti, potrebbe essere sostanzialmente l'unica opzione a meno di un'applicazione Web personalizzata) quando:

  • Avere un inventario ampio e complesso.
  • Necessità di modellare tipi di prodotti complessi.
  • Hanno contenuto relativamente statico.
  • Vuoi gestire più negozi da un unico back-end CMS.
  • Hai bisogno di un pannello di amministrazione super potente ed espandibile.

Altri grandi vantaggi includono:

  • L'ampia base di utenti e il supporto commerciale di Magento significano che è attivamente sviluppato e sicuro. Gli aggiornamenti di sicurezza vengono pubblicati regolarmente e in modo tempestivo.
  • Magento supporta anche un'ampia varietà di gateway di pagamento.
  • Le estensioni Magento sono state sviluppate per qualsiasi cosa, dalle aste all'importazione ed esportazione di dati.
  • Magento è SEO-friendly.

Magento: eCommerce per esperti

Magento è open-source ed è stato creato appositamente per l'eCommerce. È un framework PHP vagamente basato su Zend Framework e utilizza un database MySQL per l'archiviazione. Il suo sistema di creazione di modelli di moduli ha una struttura di cartelle gerarchiche, che consente agli sviluppatori e ai designer di Magento di sovrascrivere i file principali e del tema senza modificarli e senza interrompere inutilmente gli aggiornamenti successivi.

La sua storia open source è sia una benedizione che una maledizione.

L'ecosistema Magento probabilmente non esisterebbe senza di esso, ma ha anche prodotto una base di codice ampia e complessa che a volte è scarsamente documentata e spesso ha funzioni denominate in modo confuso. A volte sembra che tutto in Magento sia un'eccezione a una regola e spesso è necessario apportare modifiche a molti file diversi per implementare una singola modifica delle funzionalità.

Questo è in parte il motivo per cui i servizi di sviluppo di siti Web di eCommerce sono costosi. Gli esperti hanno impiegato tempo, seguito le lezioni, esaminato il codice, ottenuto i certificati - hanno lavorato duramente per comprendere e padroneggiare la bestia complessa - e in quanto tali, meritano e si aspettano di essere ricompensati equamente per il loro tempo e la loro esperienza.

La memorizzazione nella cache può essere un problema con Magento.

Configurato correttamente su una soluzione di hosting professionale, Magento è altamente scalabile e può funzionare a una velocità incredibile. Tuttavia, mal configurato su un provider di hosting sottodimensionato impiegherà anni a caricare anche la pagina più semplice. La memorizzazione nella cache è la risposta: memorizzazione nella cache del codice operativo PHP, memorizzazione nella cache del back-end del database e memorizzazione nella cache dell'intera pagina.

La memorizzazione nella cache di Opcode è ora praticamente standard con PHP, ma potrebbe essere necessario aggiornare il file php.ini per configurarlo. Anche una cache di back-end Redis è un must. E se vuoi le migliori prestazioni in assoluto, una cache a pagina intera, come Varnish, è altamente raccomandata.

Questi requisiti significano che hai bisogno di una soluzione di hosting che supporti queste funzionalità e hai bisogno di un team di sviluppo Magento che sappia come configurarle correttamente. Magento non funzionerà bene con provider di hosting scontati, come Bluehost e GoDaddy.

Dovrai scegliere un'istanza Amazon EC2 o Digital Ocean (o un'istanza di uno dei provider di hosting gestito specifici di Magento che ha già configurato queste funzionalità).

E cosa sono tutte queste cache?

In generale, una cache è un buffer di archiviazione a breve termine per i dati che sono stati recuperati dal disco o calcolati.

È il modo in cui il computer dice: ho affrontato tutti i problemi di recuperare o generare questi dati, potrei anche tenerli in giro per un po' nel caso qualcun altro ne avesse bisogno.

Poiché le cache sono in genere nella memoria volatile, il recupero dei dati da una cache è di ordini di grandezza più veloce del ricalcolo o della lettura dal disco.

Le diverse cache menzionate sopra funzionano a diversi livelli di astrazione nel framework.

La cache del codice operativo funziona a livello di compilazione del codice PHP e salva blocchi di codice PHP già compilati per l'esecuzione successiva. Una cache back-end per Magento è un miglioramento del sistema di memorizzazione nella cache dei file. Per visualizzare una pagina, Magento deve sfogliare potenzialmente centinaia di file PHP e XML. Questo è lento.

Spesso i contenuti della pagina non cambiano tra le richieste. Per questo motivo, quando Magento esegue il rendering di una pagina, salva i risultati in una cache del file system.

Questo è più veloce del renderizzare nuovamente la pagina. Ma le letture del disco sono ancora relativamente lente, quindi l'utilizzo di Redis come cache in memoria per archiviare questi blocchi e pagine renderizzate è molto più veloce (e può anche essere utilizzato per archiviare i dati della sessione).

La terza cache che ho menzionato, Varnish, è una cache a pagina intera.

Funziona in modo completamente separato da Magento (e in genere viene installato su un server separato). È un proxy inverso HTTP con memorizzazione nella cache: si trova tra il tuo sito Web e il mondo, salvando intere pagine e associandole agli URL di richiesta.

La memorizzazione nella cache suona alla grande, giusto? Lo è, ma aggiunge anche una notevole complessità.

Considera questo. Ora hai aggiunto un database Redis al tuo server; hai aggiornato e mantenuto i tuoi file di configurazione; e forse hai aggiunto un altro server per ospitare la cache a pagina intera di Varnish.

Inoltre, cosa succede quando una pagina cambia contenuto? Come fa la cache a sapere di non inviare il risultato memorizzato nella cache? Uh Oh.

Ci sono ovviamente soluzioni a questo, chiamate invalidamento della cache, ma aggiunge un altro livello di pensiero, complessità e potenziali problemi.

Inoltre, se il tuo team di sviluppo è veramente professionale, insisterà su un ambiente di test oltre all'ambiente di produzione, nonché un repository Git su GitHub per il controllo del codice sorgente (e, a proposito, se sono non utilizzando il controllo del codice sorgente, trova un altro sviluppatore!).

Un'alternativa è WordPress WooCommerce.

È utile confrontare Magento con una delle sue principali alternative: WordPress con il plug-in WooCommerce installato.

Di recente ho lavorato con un'azienda a Denver che aveva un fantastico sito Web Magento e una soluzione di hosting. Avevano un'istanza Amazon EC2 per il server di produzione e una per l'ambiente di test. Sono stato coinvolto per migliorare le prestazioni e aiutarli a implementare una riprogettazione completa del sito Web.

Li ho configurati con una cache di back-end Redis, che ha fatto caricare la pagina quasi istantaneamente, e ho lavorato con il designer per trasformare i suoi modelli di Photoshop in un sito Web live.

Dopo alcune settimane di lavoro, il sito web sembrava fantastico. Tuttavia, continuando a lavorare con loro, ho iniziato a rendermi conto che i costi di hosting e di sviluppo non erano in linea con quanto potevano permettersi.

Con l'evoluzione del loro marchio, volevano apportare più modifiche al sito Web, oltre a integrare una serie di moduli personalizzati. Mi stavano pagando migliaia di dollari per aiutare a progettare e riprogettare il sito web. Inoltre, all'epoca, avevano solo circa sei prodotti. Inoltre, mi hanno chiesto di creare contenuti dinamici e di creare un blog sul sito web.

Considerando le loro esigenze, la fase in cui si trovava l'azienda e quanto stavano pagando per l'hosting e lo sviluppo, abbiamo deciso che Magento non era adatto a loro.

Dopo molte ricerche, sono andati con un nuovo sito Web WordPress/WooCommerce.

In sostanza, ho rinunciato al lavoro, ma la mia priorità era ciò che era meglio per il mio cliente; e la verità è che se il cliente non sa cosa stanno facendo con Magento, non ha effettivamente bisogno delle sue funzionalità e non ha il budget per supportarlo, non sarà divertente per nessuno coinvolto.

Se hai un'attività con relativamente pochi prodotti che si adattano a un modello di prodotto aziendale standard, WordPress/WooCommerce potrebbe essere un'ottima opzione.

Gli sviluppatori WordPress sono (generalmente) più economici degli sviluppatori Magento. La community di WordPress è fiorente e la piattaforma è molto ben documentata con una base di codice raffinata. Questa soluzione è piccola, veloce e funziona praticamente su qualsiasi provider di hosting, inclusi tutti i vari fornitori di sconti.

Se questa combinazione funzionerà per te, ti farà risparmiare denaro sia nei costi di sviluppo che di hosting. Se stai cercando di realizzare il tuo sito da solo, senza pagare uno sviluppatore esterno, probabilmente dovresti evitare Magento e potresti prendere in considerazione WordPress/WooCommerce.

Un altro motivo per cui potresti esaminare WordPress/WooCommerce è se desideri sfruttare le funzionalità di blogging di WordPress. Magento ha la capacità di consentire ai clienti di creare e aggiornare contenuti dinamici, ma non è affatto così raffinato e facile come lo è con WordPress.

Detto questo, WordPress/WooCommerce non ha neanche lontanamente la capacità di Magento di configurare prodotti e sconti e gestire grandi scorte (non che non possa farlo – ha ottime funzionalità ed è in costante crescita – ma è qui che Magento eccelle ).

WordPress/WooCommerce inizierà a sembrare goffo quando il numero di prodotti che vendi supera le poche centinaia o quando inizi a voler creare prodotti complessi e raggruppati con attributi personalizzati; o quando vuoi programmare sconti e concedere sconti, ma solo a determinati gruppi di clienti, e vuoi cross-sell e up-sell e avere un'opzione regalo; eccetera.

Qual è la soluzione giusta per te? Dipende.

Come è vero con tutte le tecnologie, Magento ha una serie di vantaggi distinti, ma ha anche i suoi svantaggi.

I principali vantaggi di Magento includono:

  • Open-source
  • Specificamente realizzato per l'eCommerce
  • Ottimo sistema di sconti
  • L'integrazione del gateway di pagamento è semplice
  • Flessibile e personalizzabile
  • Pannello di amministrazione molto potente
  • Altamente scalabile
  • Una volta ottimizzato (vanish, ottimizzazioni db, redis caching, opcode caching), Magento può essere abbastanza veloce
  • Supporto multi-tenant
  • SEO friendly
  • Ampia base di utenti, attivamente sviluppata, sicura

I problemi noti includono:

  • La storia dell'open source ha lasciato un'enorme base di codice invasa che fa tutto e lascia ogni porta aperta alla personalizzazione
  • Non così ben documentato come altre piattaforme
  • Lo sviluppo è costoso. In parte perché è difficile e in parte perché è un sistema popolare
  • Le funzionalità importanti sono spesso disponibili solo in moduli commerciali di qualità variabile che possono anche richiedere il supporto dell'integrazione di terze parti
  • Requisiti server costosi

Tutti questi fattori devono essere valutati attentamente caso per caso quando si decide se Magento è la soluzione giusta per te o per il tuo cliente, se possibile prima di selezionare un partner per i servizi di sviluppo di siti Web di eCommerce.

Non aver paura di Magento.

Ti ho già spaventato da Magento? Spero di no.

Quanto segue suona come te?

Hai un fiorente negozio con 2.000 prodotti e hai bisogno della capacità di creare prodotti configurabili complessi con una dozzina di opzioni e raggrupparli con altri prodotti in gruppi.

Vuoi anche essere in grado di programmare facilmente vendite e promozioni e distribuire codici ai clienti per sconti. Hai il budget e la spinta per investire in una soluzione veramente professionale che sia open source, SEO-friendly, altamente scalabile e abbastanza veloce una volta ottimizzata e ospitata correttamente.

Se è così, dai un'occhiata a Magento. Se sei disposto a investire tempo e denaro, è una soluzione di eCommerce davvero professionale che durerà per tutta la vita.