Fornire un sito Web solo come pagine HTML memorizzate nella cache

2

Diciamo che voglio sviluppare un sito web in cui tutte le pagine verranno generate dinamicamente e "stampate" in file HTML statici. Quindi servirò questi file HTML da un contenitore (come un'istanza di Amazon EC2) che non ha linguette sul lato server o database in esecuzione in background.

Creerò uno script per far aggiornare automaticamente i file HTML in un determinato periodo.

I miei motivi per farlo sarebbe quello di disaccoppiare il collegamento tra il traffico al mio sito web e il carico del server (in altre parole, in questo modo il mio sito può scalare senza bisogno di CPU / RAM aggiuntiva sul server).

Ecco alcuni vantaggi che mi aspetto di fare in questo modo

  • Voglio un modo economico per ospitare un sito Web ad alto traffico che può contenere grandi picchi di traffico (dal contenuto virale)
  • Lo voglio caricare il più velocemente possibile - senza alcun ritardo dalla generazione di contenuti dinamici per ciascun visitatore.

Le mie domande sono le seguenti:

  • Quali sono gli aspetti negativi della strutturazione di un sito Web in questo modo?
  • Questo piano è una cattiva idea?
  • Come si chiama questo tipo di architettura?

I miei sfondi

Ho creato alcune semplici app web usando PHP / mySQL e ho familiarità con javascript, hmtl, css --- fondamentalmente un nuovo / dilettante sviluppatore web.

    
posta psvj 07.12.2014 - 00:50
fonte

2 risposte

2

What are the downsides of structuring a website this way?

Il problema principale riguarda le pagine che cambiano per utente. Ad esempio, il tuo sito web ha un sistema utente, quindi per ogni utente che effettua l'accesso genereresti una nuova pagina e la cache?

Is this flat out a bad idea?

No, è un'idea eccellente. In realtà, il contenuto statico è spesso servito in questo modo.

What is this type of architecture called?

Non penso che abbia un nome specifico.

Ci sono alcune cose che vorrei raccomandarti.

I want a cheap way to host a high traffic website that can accommodate large spikes in traffic (from viral content)

Prima di tutto, cosa si definisce come traffico elevato? Il mio VPS da $ 10 al mese può servire migliaia di pagine al secondo su un singolo core, con nginx in esecuzione.

Verifica se non puoi andare in giro prima con una soluzione di memorizzazione nella cache. Ce ne sono molte disponibili o potresti personalizzare le tue specifiche per quello che ti serve. Fare uno di base è in genere piuttosto semplice e ti dà il controllo su quali pagine vuoi mettere nella cache e quali no.

    
risposta data 07.12.2014 - 18:02
fonte
1

What are the downsides of structuring a website this way?

Ovviamente, il lato negativo è l'incapacità di fare cose tipiche "dinamiche" come CRUD con le forme. Naturalmente, puoi ancora utilizzare alcune API di terze parti per moduli di contatto e commenti, come Disqus o Muut .

Is this flat out a bad idea?

No, è un'ottima soluzione per siti statici. È davvero molto veloce, ma molto limitato al suo "caso d'uso".

Dai un'occhiata a Jekyll (e siti che lo utilizzano ) e generatori di siti statici simili. È abbastanza facile da avviare con, ci sono molti tutorial. Pagine GitHub è una delle piattaforme di hosting gratuito per siti statici, integrata con Jekyll. Puoi impostare un dominio personalizzato, quindi dovrebbe adattarsi alle tue esigenze. Non sto dicendo che è il migliore, è solo quello che uso.

What is this type of architecture called?

"Sito web statico / generatore di pagine". Non è un nome di modello architettonico, ma solo la categoria di software. Non penso che esista un termine specifico diverso dal semplice "sito web statico".

I will make a script to have the HTML files automatically refreshed at a set period.

Spingi semplicemente il contenuto aggiornato quando cambi qualcosa, che è più efficiente.

    
risposta data 07.12.2014 - 17:07
fonte

Leggi altre domande sui tag