Come distribuire un singolo sito Web su più server fisici?

5

Modifica: Ho fatto questa domanda 3 o 4 anni fa quando ero nuovo allo sviluppo web, la domanda mi sembra un po 'stupida oggi. Volevo creare una configurazione server personalizzata senza fare affidamento su altri provider di hosting. Volevo eliminare questa domanda, ma ha delle belle risposte, quindi la lascio.

Voglio distribuire il mio sito Web su più server fisici.

Esistono metodi per salvare file e impostazioni (e anche l'input dell'utente), su tutti i server fisici, in modo che i server svolgano i seguenti lavori:

  1. Server utilizzati come una rete, accelerando il processo dando una cosa robusta all'utente finale.
  2. Dati da memorizzare su tutti i driver fissi dei server e
  3. Ogni server ha la connessione Internet da un altro provider, per esempio
    1. se uno qualsiasi dei provider Internet si arresta, o
    2. si verificano errori hardware o di alimentazione,

il sito Web è ancora in esecuzione, senza interruzioni e senza perdita di dati.

Qualcuno conosce qualche corso online o alcuni tutorial completi su questo argomento?

    
posta Bangash 27.10.2012 - 04:32
fonte

3 risposte

3

Pensiero giusto.

Every server have the internet connection from different provider, so for example a. if any of the internet providers gets down, or b. there occur any hardware or power failure, the website still runs, without a break and without any data loss.

Per questo, se ti affidi a più servizi di hosting, sarà difficile mantenerti aggiornato quando il tuo sito web crescerà.

Per il tuo scopo, dovresti prendere i servizi di hosting dalle aziende basate sulla rete di consegna contenuti (CDN).

A content delivery network (CDN) is a large distributed system of servers deployed in multiple data centers in the Internet. The goal of a CDN is to serve content to end-users with high availability and high performance. CDNs serve a large fraction of the Internet content today, including web objects (text, graphics, URLs and scripts), downloadable objects (media files, software, documents), applications (e-commerce, portals), live streaming media, on-demand streaming media, and social networks. -- From Wikipedia

Le seguenti risorse potrebbero aiutarti

risposta data 27.10.2012 - 13:39
fonte
1

Se stai cercando guadagni in termini di prestazioni, è un argomento completamente diverso da alta disponibilità o tolleranza d'errore . Immagino che tu stia cercando solo quest'ultimo.

Quello che puoi fare è avere 2 (o più) server. 1 attivo e l'altro per il fallback. Ad esempio, il server principale può essere eseguito, fare tutto ciò che deve fare, mentre il server altro continua a sincronizzarsi con esso (possibilmente su NFS o SSH) e a testarlo con CURL per assicurarsi che sia vivo ogni pochi minuti (o secondi).

Se e quando rileva che il server principale non risponde, avvia il software del server Web sul proprio HD, insieme a tutti i dati così sincronizzati, dichiarandosi efficacemente come server attivo.

Se e quando il server principale, che in precedenza era andato giù, risale, la prima cosa che fa è controllare se l'altro server è ora quello attivo (o in procinto di diventarne uno). Se lo è, allora si dichiara efficacemente come secondario. Altrimenti, riavvia semplicemente il proprio server Web.

    
risposta data 27.10.2012 - 13:15
fonte
1

Un CDN può fare ciò che vuoi se il tuo sito web è in cache (molte letture ripetute).

Tuttavia, se non lo è, l'ho configurato in questo modo con più connessioni Internet - > Firewall - > Router - > Load Balancer - > Più server Web - > Condivisa SAN, in questo modo tutti i server Web stanno salvando nella stessa posizione. Se vuoi distribuire i tuoi server su una vasta area devi essere consapevole che ci sarà una latenza di qualche tipo tra i server e quindi non si abbinerà perfettamente.

    
risposta data 29.10.2012 - 12:18
fonte

Leggi altre domande sui tag