Richieste separate per il contenuto della pagina statico e dinamico sul caricamento della prima pagina?

1

Sto pensando alle seguenti due richieste:

  1. Richiesta 1:

    Carica tutto il codice HTML statico, JavaScript, immagini, ecc., la struttura del sito web per così dire. Quindi lancia una seconda richiesta per ottenere contenuti dinamici (ad esempio notizie, ultimi post).

  2. Richiesta 2

    Invia nuovo HTML, JavaScript, immagini, ecc. come richiesto dal contenuto dinamico.

Mi aspetto che la prima richiesta venga memorizzata nella cache per le volte successive in cui un utente visita il sito Web e pertanto non è un problema per il ritorno degli utenti. Ma per gli utenti principianti dovrei forse costruire l'intero contenuto lato server e inviarlo insieme in una richiesta ? Poiché nell'approccio sopra riportato, è necessario rispondere a entrambe le richieste affinché l'utente possa utilizzare il sito Web.

Posso lasciarlo come due richieste (più facile per me da programmare, dal momento che sto costruendo app a singola pagina che fanno affidamento su richieste Ajax)? O c'è un modo semplice per costruire tutto il lato server ed evitare due richieste agli utenti per la prima volta?

... ma non romperebbe il meccanismo di memorizzazione nella cache, dal momento che lo stesso URL restituirebbe contenuti parzialmente diversi ogni volta?

Si tratta di un problema noto con una soluzione nota?

    
posta Rafael Emshoff 02.06.2015 - 14:43
fonte

2 risposte

1

Ci sono un paio di cose da considerare qui, almeno quando si tratta di contenuti html:

Metodo 1: Caricare una parte del sito che rimarrà statica per il prossimo futuro è buona quando ci si aspetta che gli stessi utenti frequentino il sito e la SEO sia meno problematica *. Hai anche un maggiore controllo sulle prestazioni percepite; il contenuto "statico" può preparare l'utente con un'interfaccia utente di base che caricherà pigramente il contenuto. Consiglierei questo metodo per i siti web che sono più "app" di "sito", in cui il contenuto non è il motivo principale per cui i visitatori utilizzano il tuo sito.

Metodo 2: Questo è meglio per molti visitatori che visitano una sola volta perché ci sono meno viaggi di andata e ritorno di cui preoccuparsi. È anche un SEO migliore perché i crawler vedranno ciò che il server genera *. È anche più facile da mantenere e aggiornare. Lo consiglierei a siti generici che hanno come target un pubblico più ampio e contengono molti contenuti prevalentemente statici.

CSS e JS possono essere caricati e memorizzati nella cache immediatamente. Ci sono alcuni motivi per caricare CSS o JS in qualsiasi momento tranne quando il sito è stato caricato per la prima volta.

* Non ho a portata di mano alcuna fonte, ma credo che ci sia stato qualche sforzo per rendere i web crawler capaci di leggere contenuti generati da AJAX.

    
risposta data 02.06.2015 - 23:51
fonte
0

Il primo approccio è la strada da percorrere: tutti i collegamenti alle risorse del sito sono richieste tecnicamente individuali (sebbene con http 1.1 siano realizzati in una singola connessione con un piccolo keep-alive). Quindi, successivamente richiedere le risorse dinamiche non è diverso. Potresti anche incorporare il link alle cose dinamiche nella pagina html e lasciare che il browser funzioni.

Inoltre, la cache si applicherà se leggi tutte le risorse normalmente.

    
risposta data 02.06.2015 - 15:56
fonte

Leggi altre domande sui tag