wand-magic-sparklesOttimizza la larghezza di banda

Ottimizzazione della larghezza di banda tramite l'intestazione ETag

Se hai un feed che cambia meno frequentemente rispetto a quanto è programmato l'esecuzione del tuo progetto, riscaricare l'intero feed a ogni esecuzione sarebbe uno spreco. Potrebbe ritardare inutilmente il progetto e comportare costi di uscita non necessari con il tuo provider di hosting.

Per evitare download inutili, puoi attivare l'ottimizzazione della larghezza di banda per gli import http e https. Con questa impostazione attivata, controlleremo comunque il file a ogni esecuzione, ma se il tuo server indica che il file non è cambiato rispetto al download precedente, non lo scaricheremo di nuovo.

Dettagli tecnici

Quando l'ottimizzazione della larghezza di banda è attivata, durante un download salviamo il valore dell' intestazione http ETagarrow-up-right, se il tuo server la include nella risposta. Alla successiva esecuzione, includiamo un intestazione http If-None-Matcharrow-up-right nella nostra richiesta, che contiene il valore ETag osservato in precedenza. Se il tuo server risponde con il codice di stato http “304 Not Modified”, allora sappiamo che il file non è cambiato.

Questo significa che perché l'ottimizzazione della larghezza di banda si applichi, il tuo server deve fare due cose:

  • Deve includere un'intestazione ETag nella sua risposta

  • Deve rispettare l'intestazione di richiesta If-None-Match

Server comuni come Apache, Nginx e Amazon S3 supportano questo comportamento di default, quindi non devi prendere precauzioni particolari per sfruttare l'ottimizzazione della larghezza di banda.

Se il tuo server non include un'intestazione ETag, o se non restituisce mai una risposta “304 Not Modified”, l'ottimizzazione della larghezza di banda non avrà effetto e scaricheremo l'intero file a ogni esecuzione.

Domande e risposte

chevron-rightCome faccio a sapere se l'ottimizzazione della larghezza di banda è efficace?hashtag

Quando abbiamo provato a importare un file ma questo non è cambiato dall'ultimo import, puoi vederlo negli aggiornamenti di stato di quell'importatore:

chevron-rightI dati in Channable potrebbero diventare obsoleti quando l'ottimizzazione della larghezza di banda è attivata?hashtag

No, non c'è rischio di dati obsoleti se il tuo server si comporta correttamente. Channable controllerà comunque la disponibilità di dati più recenti a ogni esecuzione programmata e ogni volta che clicchi “esegui ora” sull'import, anche con l'ottimizzazione attivata.

chevron-rightC'è qualche svantaggio nell'attivare l'ottimizzazione della larghezza di banda?hashtag

No, se il tuo server si comporta correttamente è sempre sicuro attivare l'ottimizzazione. Se il server non supporta le funzionalità necessarie per ottimizzare la larghezza di banda, l'ottimizzazione sarà inefficace ma non dannosa.

chevron-rightQuando dovrei disattivare l'ottimizzazione della larghezza di banda?hashtag

Se il tuo server è mal configurato o contiene un bug, potrebbe rispondere con “304 Not Modified” anche quando il feed è effettivamente cambiato. L'errore più comune è un server che invia un valore ETag costante, che non cambia anche quando il feed cambia. In questo caso i dati in Channable diventerebbero obsoleti. Se non riesci a risolvere il problema sul server, puoi disattivare l'ottimizzazione della larghezza di banda in Channable.

chevron-rightL'ottimizzazione della larghezza di banda evita tutti i download inutili?hashtag

Scaricheremo comunque il feed una volta ogni 10 giorni, anche se il server indica che il feed non è cambiato. Per i file che cambiano meno spesso, questo significa che occasionalmente scarichiamo l'intero file, ma l'ottimizzazione della larghezza di banda risparmia comunque almeno il 90% della larghezza di banda.

Ultimo aggiornamento

È stato utile?