2011-09-28 11 views
5

Tutti volte nella mia vita, ho salvare le immagini sul mio server come file:Perché Google utilizza i dati codificati Base64 come attributi dell'immagine src?

  • gli originali
  • le miniature
  • l'originale con filigrane

... tutti come file in cartelle.

Ma oggi sto visualizzando le immagini di google e l'src delle immagini è un hash codificato in base64. Che vantaggio ottiene Google dal servire le immagini in questo modo? Perché qualcuno dovrebbe farlo invece di servire solo le immagini convenzionalmente?

risposta

7

google è un po 'ossessionato dalla latenza; la latenza per il caricamento della pagina aumenta se il browser deve andare e fare una richiesta separata al server Web per ogni immagine sulla pagina. puoi eliminare questa latenza scrivendo i dati dell'immagine direttamente nella pagina quando generi la pagina. in realtà vedo molti siti ricchi di immagini, specialmente blog, che usano questa tecnica al giorno d'oggi.

solo perché l'immagine è inclusa nella pagina non significa necessariamente che non è memorizzata come file sul server Web - solo che il processo del server Web che ha generato la pagina è già stato aperto e letto il file immagine e quindi scritto sono i dati nella pagina. Google sta probabilmente memorizzando le immagini nel suo archivio dati proprietario e segreto, ma non è necessario.

+0

Sì, lo sottolineo, la maggior parte del tempo in file di querys è nei passaggi precedenti dei dati di trasferimento (conferma intestazioni e cose come questa ...), quindi se fornisci una sorgente di base64encode diretta sarà meglio per l'utente. Ma ci sono problemi in questa teoria: è necessario dare più fonte (la sua maggiore larghezza di banda), è necessario aprire il file e leggere e convertire in base64 codificare ciascuna immagine, questo tempo necessario e renderlo ogni volta di caricare la pagina. Penso che il modo migliore sia salvare la base64encode nel database, ma questo richiede più spazio nell'archivio dei database ... Qual è il modo migliore? –

+0

File più grandi> molte richieste HTTP –

Problemi correlati