Fabrizio Balliano: tracciare i visitatori nonostante varnish

Post on 07-Aug-2015

106 views 0 download

Transcript of Fabrizio Balliano: tracciare i visitatori nonostante varnish

CHI SONOCHI SONOFabrizio Balliano

@fballiano

PHP dal 1999

Magento dal 2007

MCD MCD+ MCFD MCSS

magento.com/it admin

Full time Magento dal 2011

CTO di Sevenlike S.r.l.

COS'È VARNISHCOS'È VARNISH

Web application acceleratorReverse proxy HTTPCache server

Enorme guadagno di velocitàMinor carico CPUMinor traffico di reteSoluzione full RAM

COS'È VARNISH PER MAGENTOCOS'È VARNISH PER MAGENTO

Full Page Cache- HTML pre renderizzato

Asset statici- JS/CSS- Immagini

ESEMPIO DI INFRASTRUTTURAESEMPIO DI INFRASTRUTTURA

PERCORSO VISITATORI PERCORSO VISITATORI PAGINA NON IN CACHEPAGINA NON IN CACHE

PERCORSO VISITATORI PERCORSO VISITATORI PAGINA IN CACHEPAGINA IN CACHE

IL PROBLEMA È...IL PROBLEMA È...

I server webnon sono a conoscenza

di una visitaad una pagina in cache

POSSIAMO TRACCIARE I VISITATORI POSSIAMO TRACCIARE I VISITATORI IN ALTRI MODI NO?IN ALTRI MODI NO?

Molti software di tracciamento moderni(in realtà servizi)

sono basati su javascript

Qualcuno ha detto Google Analytics?

E SE VOLESSIMO TRACCIARE UN VISITATORE E SE VOLESSIMO TRACCIARE UN VISITATORE ALL'INTERNO DI MAGENTO?ALL'INTERNO DI MAGENTO?Personalizzare l'esperienza di browsingin base al comportamento del visitatore

Report a backend

AD ESEMPIOAD ESEMPIO

UN ALTRO ESEMPIOUN ALTRO ESEMPIO

UN ALTRO ANCORAUN ALTRO ANCORA

MA... SE I SERVER DI FRONTENDMA... SE I SERVER DI FRONTENDNON RICEVONO LE RICHIESTE...NON RICEVONO LE RICHIESTE...

QUESTE FEATUREQUESTE FEATURE(E ALTRI TIPI DI TRACCIAMENTO)(E ALTRI TIPI DI TRACCIAMENTO)

NON POSSONO FUNZIONARENON POSSONO FUNZIONARE

COOKIES / LOCALSTORAGE?COOKIES / LOCALSTORAGE?Possiamo utilizzarli per ricreare i "recently viewed"?

Sì, ma non è abbastanza in molti casi.Risolve solo parte del problema.

TORNIAMO AL NOSTRO PERCORSOTORNIAMO AL NOSTRO PERCORSO

NOTATE QUALCOSA?NOTATE QUALCOSA?

BLOCCHI DINAMICI!BLOCCHI DINAMICI!

TIPI DI BLOCCHI DINAMICITIPI DI BLOCCHI DINAMICI

ESI: Edge Side IncludesInvisibili ai clientPrima del page loadPossono essere in cachetutto il sito/una pagina un solo utente/tutti NO COOKIES! Pochi dati trasferiti

AJAXVisibili ai client Dopo il page load Can NOT be cached COOKIES! Molti dati trasferiti

REFERENCE DELLA CONFIGURAZIONEREFERENCE DELLA CONFIGURAZIONE

AGGIUNGIAMO UN NUOVO BLOCCOAGGIUNGIAMO UN NUOVO BLOCCODINAMICO!?DINAMICO!?

HEY, ASPETTA!HEY, ASPETTA!OGNI CHIAMATA AI SERVER WEBOGNI CHIAMATA AI SERVER WEB

È IMPORTANTE!È IMPORTANTE!

POSSIAMO RAGGIUNGERE L'OBIETTIVOPOSSIAMO RAGGIUNGERE L'OBIETTIVOSENZA AGGIUNGERE UN NUOVOSENZA AGGIUNGERE UN NUOVOBLOCCO DINAMICO ESI/AJAX?BLOCCO DINAMICO ESI/AJAX?

FLASH MESSAGES!FLASH MESSAGES!

PATCH AL CORE?PATCH AL CORE?MAI!MAI!

FLASH MESSAGES: ESTENDIAMOLIFLASH MESSAGES: ESTENDIAMOLIhttps://github.com/fballiano/magento-turpentine-recently-viewed

FLASH MESSAGES: FLASH MESSAGES: ESTENDIAMOLIESTENDIAMOLI

class Fballiano_TurpentineRecentlyViewed_Block_Messages extends Nexcessnet_Turpentine_Block_Core_Messages{ public function _prepareLayout() { // code to do whatever we want return parent::_prepareLayout(); }}

THANK YOU!THANK YOU!

http://fabrizioballiano.ithttp://twitter.com/fballianohttp://github.com/fballianohttp://linkedin.com/in/fabrizioballianohttp://www.sevenlike.com