Personal tools

speed

Jun 24, 2014

Plone e risorse JavaScript/CSS: alcuni consigli per buone prestazioni

Quando le prestazioni sono tutto...

Plone e risorse JavaScript/CSS: alcuni consigli per buone prestazioni

L'analisi di un sito relativamente alle prestazioni di front-end ci ha portato ad alcune considerazioni interessanti su come registrare risorse aggiuntive

Di recente siamo stati incaricati di occuparci dell'ottimizzazione di front-end di un sito Plone. Il lavoro è stato svolto sotto molti aspetti, ma nel seguito di questo articolo mi occuperò solo di uno dei recenti mantra che sta imperversando nel web relativamente all'ottimizzazione del front-end: limitare il numero di connessioni HTTP della pagina.

Perché? In poche parole: per quanto la risorsa sia piccola o grande, il problema è la connessione alla risorsa e i tempi di latenza che questa introduce.

Stato del sito

Il sito in questione ha una storia piuttosto lunga, è in produzione da anni; questo si traduce spesso in una lunga lista di prodotti aggiuntivi installati e modifiche varie effettuate al tema grafico o ai prodotti aggiuntivi stessi.

Altra caratteristica importante: è un Plone 4.2, ma la sua storia è iniziata con la versione 3.3. Si è passati attraverso un processo di migrazione della versione di Plone.

Infine: il tema grafico, anche se migrato a Plone 4, è fondamentalmente fedele al vecchio stile della realizzazione Plone 3 (in due parole: no Diazo).

read more

Feb 18, 2013

Sviluppo Front-End: ottimizzare le prestazioni

Migliorare l'esecuzione delle risorse di front-end

Sviluppo Front-End: ottimizzare le prestazioni

Alcuni trucchi e consigli per migliorare la velocità dei siti web

Per quanto riguarda lo sviluppo front-end, c'è sempre più attenzione alle performances, dato che favorendo la velocità dell'esperienza utente c'è un ritorno diretto in termini di soddisfazione da parte di chi fruisce il progetto web.

E' uscito da poco un articolo molto curato sull'argomento che ha attratto la mia attenzione:

Front-end performance for web designers and front-end developers di Harry Roberts.

Nell'articolo vengono illustrati e sintetizzati molti degli argomenti relativi all'ottimizzazione dello sviluppo front-end.

read more

Jun 04, 2012

Update Security Settings: time consuming? Non per forza!

Update Security Settings, dietro le quinte!

Update Security Settings: time consuming? Non per forza!

Filed Under:

Analisi di un processo tedioso per un manutentore di siti con molti oggetti

Nella mia carriera di tartaruga plonista, mi è capitato diverse volte di lavorare con siti di dimensioni notevoli. Quello a cui più sono affezionato a oggi conta quasi 400K oggetti in catalogo.

Quando il cliente ti chiede di cambiare una piccola impostazione di sicurezza in un workflow associato a 600 o 700 oggetti, tu plonista programmatore e manutentore sai che la to-do list sarà:

  1. Cambiare il workflow associato all'oggetto;
  2. Aggiornare il prodotto nell'installazione e ricaricare il profilo legato ai workflow;
  3. Premere in ZMI Update Security Settings e, se il sito è molto grosso, andare a casa! Ci si pensa la mattina seguente... (se la notte è stata sufficientemente lunga)

Ma non si può proprio fare meglio?

Si! Si può e ora vediamo come.

 

read more

May 13, 2012

Discipliniamo i bot di ricerca con robots.txt

introduzione al file robots.txt

Discipliniamo i bot di ricerca con robots.txt

Filed Under:

Cos'è e come sfruttare al meglio questo utile file

You shall not passCome molti sapranno, il robots.txt è un utile file da piazzare nella root di un qualunque sito internet, che permette di definire delle regole da dare ai vari spider dei motori di ricerca che accedono al nostro sito per indicizzare le sue pagine. Serve in sostanza a dare una lista di pagine a cui lo spider non può accedere e che quindi non vogliamo far apparire tra i risultati dei motori di ricerca.

Bisogna fare molta attenzione a queste regole e scriverle correttamente, perché per esempio se si è troppo restrittivi si rischia di nascondere tutte le proprie pagine al mondo intero (e i clienti non ne sarebbero molto contenti), mentre al contrario se si lascia troppa libertà c’è il rischio che vengano indicizzati anche contenuti indesiderati (anche se questo con il nostro amato Plone non dovrebbe accadere usando correttamente i workflow e i permessi).

Ultimamente mi sono interessato particolarmente alla customizzazione di questo file, perché abbiamo avuto problemi di prestazioni su alcuni portali, anche causati proprio dai bot che cercavano di accedere massivamente ad alcune pagine lente del sito, occupando parecchie risorse e di conseguenza rallentando tutto il sistema, se non addirittura bloccandolo.

Migliorare le prestazioni del sito con robots.txt? Certo! basta non far indicizzare pagine lente e senza contenuti rilevanti

 

read more

May 06, 2011

Varnish purge after article rate

Filed Under:

For one of the projects we are using a very aggressive Varnish configuration. We are caching also html (not for long but still) for anonymous users. It could be a problem if you have some dynamical features - like rating. 

But not any more. Using this simple vcl add-on you can purge article view after making a vote:

sub vcl_recv {
...
   if (req.http.Cookie && req.http.Cookie ~ "statusmessages=") { 
       purge("req.url ~ " req.url);
       pass;
   }
...
}

 

It simply checks if you have a statusmessages cookie in request (after rating an article Plone is displaying confirmation status message) and purge current url from cache. Simple, clean and it works!