Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    168

    Funzionamento cache di un web server

    Buongiorno a tutti!
    Sto implementando un web server compreso di caching, ma ho qualche problema con quest'ultimo.
    Non tanto nell'implementazione, quanto nel capire bene il suo funzionamento e di conseguenza nell'implementazione!

    Il mio web server deve restituire risorse modificandole prima secondo alcuni parametri.

    Ho cercato molto su libri e sul web, ma ho le idee ancora un po' confuse. Quello che mi manda in confusione è un po' il ruolo della cache del browser. Provo a spiegare ciò che ho capito io...se magari qualcuno potesse chiarirmi le idee ne sarei profondamente grata!!!!

    Dal browser invio una prima richiesta http al mio server:

    • il server gestisce la richiesta, salva la risorsa (appena modificata) nella propria cache e la invia al browser con:


      • un campo nell'intestazione http contenente un ETag identificativo della risorsa

      • un campo contenente la data dell'ultima modifica della risorsa
      • un campo Cache-Control contenente un numero massimo di secondi che il browser può considerare valida la risorsa.



    Dal browser invio una seconda richiesta per la stessa risorsa:

    • Se nella cache del browser c'è una risorsa con uguale Etag e non è ancora trascorso il numero di secondi di validità, la richiesta viene servita senza passare per il server. Quindi io, lato server, non ho nulla da fare in quanto la richiesta nemmeno arriva.

    • Se nella cache del browser c'è una risorsa con uguale Etag ma è trascorso il tempo di validità, il browser invia al server la richiesta contentente il campo If_modified_since. Io dal lato del server dovrei perciò confrontare questa data con la data dell'ultima modifica della risorsa (quella già modificata presente nella cache del server o quella ancora da modificare?).


      • Se non è stata modificata successivamente a if_modified_since non è necessario che il server invii di nuovo la risorsa, ma basta far valere la vecchia risorsa per un ulteriore tempo di scadenza. In questo caso, il server dovrà inviare un'intestazione http con il codice di stato 304 NotModified. Ma questo basta al browser per capire che può utilizzare la risorsa che ha già nella sua cache??

      • Se è stata modificata, viene rinviata la risorsa modificata.

    • Se nella cache del browser non c'è una risorsa, si controlla nella cache del server per evitare di dover perdere tempo modificando una risorsa già modificata


      • Se nella cache del server c'è, si verifica che la data dell'ultima modifica sia successiva a quella della risorsa (non modificata) presente nella cartella originale del server

      • Se non c'è, viene fatto tutto (modificata la risorsa, messa nella cache del server e inviata al browser).


        Chiedo scusa per aver scritto un tema!!! Ma purtroppo non riesco a capire se il mio ragionamento è corretto ed inoltre mi mancano dei tasselli (come si può notare dai punti interrogativi)


        Spero mi possiate aiutare!
        Ciao e buone feste a tutti





  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    168
    O forse la cache lato server non c'è??
    Nel senso che il server si limita solo ad indicare al browser come gestire le risorse nella sua cache...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.