Content CDN e contenuti dinamici

0

Sono curioso di sapere come le applicazioni web dinamiche giocano con reti di content delivery come cloudflare, amazon cloudfront, ecc. Capisco il concetto di un cdn che ottiene una cache delle tue pagine statiche e poi serve quelle pagine dai loro vari server relativi da dove proviene la richiesta. Tuttavia, quando si tratta di applicazioni che sono pesanti in database che richiedono sessioni utente, consentire ricerche e altre interazioni con l'utente è un cdn ancora utile?

Se la risposta è sì, il cdn esegue la scansione del server e crea cache di tutte le pagine che potrebbero essere create dinamicamente?

Se questo è vero, come vengono gestiti i dati sensibili? (Ad esempio, se la tua applicazione sta tracciando informazioni di profilo specifiche per un utente a cui solo quell'utente dovrebbe avere accesso.)

    
posta nullReference 04.09.2014 - 23:45
fonte

1 risposta

1

I CDN vengono utilizzati principalmente per contenuti statici veramente : contenuti che sono gli stessi per tutti o per la maggior parte degli utenti e che rimarranno probabilmente invariati per giorni, settimane o mesi. I CDN sono ideali per file CSS, JavaScript o immagini: non cambiano molto, di solito vengono memorizzati nella cache per un anno sul lato client e quando cambiano, propagare la modifica a CDN e client è indolore (utilizzando un numero di revisione in l'URI, come global.css?r=514 è uno dei modi per farlo).

I CDN possono anche essere usati per contenuti dinamici, ma:

  • O è identico per ogni utente,
  • O rimane invariato per giorni, settimane o mesi.

Più il contenuto è dinamico, meno vantaggioso è il CDN. Ad esempio, è possibile utilizzare un CDN per un blog in cui il contenuto cambia raramente (ad esempio un nuovo post sul blog a settimana). Pur essendo dinamico, il contenuto è lo stesso per ogni utente e non ha bisogno di essere aggiornato troppo spesso (ad esempio, memorizzare nella cache tutti i post del blog per un'ora è OK, perché non essere in grado di vedere il il post più recente per un'ora è accettabile in questo caso).

Se il contenuto è più dinamico, viene elaborato direttamente dai server delle applicazioni, non dai CDN. A proposito, la scansione del sito Web sarebbe praticamente impossibile, poiché il contenuto cambierà durante il processo di scansione o varierà da utente a utente. Ad esempio, non c'è modo per un CDN di memorizzare nella cache la mia pagina acquisti di Amazon: non solo ho bisogno della versione aggiornata della pagina web, contenente il mio ultimo acquisto che ho fatto cinque secondi fa, ma non c'è alcun vantaggio di avere un CDN a questo livello.

Si noti che poiché l'obiettivo principale di una rete CDN è quello di essere vicino agli utenti (ad esempio, un utente di Nuova Delhi non dovrebbe attendere un server in Nevada per elaborare la sua richiesta), la stessa tecnica viene utilizzata per i siti di grandi dimensioni pure: le richieste dinamiche sono spesso elaborate da server abbastanza vicini agli utenti, quando l'azienda può permettersi di costruire diversi data center in tutto il mondo.

    
risposta data 05.09.2014 - 01:17
fonte

Leggi altre domande sui tag