Come ospitare un singolo sito Web su più server?


10

Sto programmando di rilasciare un'app iOS che scarica video dal mio server. Se centinaia di persone il giorno del lancio provano a farlo, il mio sito Web e i servizi forniti dal mio server diminuiranno chiaramente. Come si ospita un sito Web su più server? Quando qualcuno prova ad accedere al mio sito, come viene trasferita la sua richiesta a un server disponibile? Come lo fanno Apple e Google? Grazie per l'aiuto.



Controlla la mia risposta è un programma molto popolare per scalare e monitorare i server
Anagio

Risposte:


5

Così come per i grandi (Google, Apple, ecc.) Hanno hardware sofisticato e costoso, il traffico delle rotte.

Una soluzione più semplice sarebbe quella di configurare più host e disporre di un singolo host che ruota le richieste.

Supponiamo di avere 5 server per l'hosting del video, denominati VideoHostN e di avere un singolo server separato da quelli che ne tengono traccia del nome RoutingHost.

Il primo client iOS richiede l'indirizzo per ottenere il video da RoutingHost. RoutingHost restituisce l'indirizzo su VideoHost1.

Richieste del secondo client iOS. RoutingHost risponde con VideoHost2.

Quindi fino a quando non raggiunge il nostro massimo ipotetico, VideoHost5, e si reimposta su VideoHost1.

È sufficiente un semplice codice lato server per tenere traccia di quale VideoHost utilizzare successivamente e restituire l'indirizzo.

È un modo economico e semplice per diffondere gli utenti. Ciò non garantisce che alcuni utenti non si intasino in alcun dato VideoHost. È una possibilità casuale che diversi utenti con connessioni lente possano finire per estrarre dalla stessa posizione, ma è un inizio.


1
Grazie per l'aiuto! Sto usando un servizio chiamato Zone Edit. Ho impostato il DNS per il mio intero sito con loro oggi e offrono DNS round robin (credo sia quello che viene chiamato) insieme a "servizi di failover". Questo controlla i server ai quali punta il DNS e invia le richieste ai server disponibili ed estrae quelli che sono pieni di richieste. Sono circa $ 12 all'anno, quindi mi limiterò a seguirli invece di capire tutto questo. Ma grazie mille per il tuo aiuto!
Jack Humphries,

Sì, a $ 12 / anno per una soluzione migliore. Puoi rilasciare l'URL a quel servizio per riferimento futuro?
Chris,


7

Puoi fare il bilanciamento del carico come da link di @ PeeHaa all'articolo di Wikipedia per informazioni qui . Ciò richiede un po 'di know how, denaro e tempo per l'installazione. Le grandi aziende come Google e Apple usano la tecnologia che hanno scritto per se stessi e cercare di imitarle è una soluzione costosa e eccessiva. Se esegui il bilanciamento del carico, vorrai utilizzare qualcosa di molto più piccolo di quello che fanno.

Oppure puoi utilizzare i server cloud per ospitare i tuoi video o altri contenuti. Si chiamano Content Distribution Networks (CDNS) e ora possono fare molto di più del semplice file hosting. Il vantaggio di questi siti è che usano la tecnologia come quella creata da Google per creare il bilanciamento del carico e ti vendono il servizio in base esattamente alla quantità di dati o cicli che consumi sui loro server. Ciò significa che i costi cresceranno allo stesso ritmo del tuo utilizzo, quindi finché avrai un buon modello di entrate avrai sempre fondi per pagare il servizio. Alcune grandi aziende per utenti più piccoli sono:

Sono molti di più di questi tre. Inoltre, l'altro vantaggio di CDN è che il contenuto non è su un server ma su una rete in tutto il mondo. Le CDN lo fanno in modo che il contenuto provenga sempre dal server più vicino all'utente. Configurare più di 2 server in una posizione non ti darà mai gli stessi vantaggi di velocità di consegna che un CDN può offrire.

Per la cronaca, non lavoro per nessuna di queste aziende. Ho utilizzato i servizi Web di Amazon per l'hosting video sul sito Web della mia azienda ed è stato un enorme vantaggio.


1

Userei Scalr su ec2 per monitorare automaticamente i tuoi server, è open source e funziona molto bene con i servizi AWS. Quindi, se il tuo server delle applicazioni inizia a essere colpito da troppo traffico, Scalr attiverà automaticamente più server e bilancerà il carico per te. Inoltre eseguirà automaticamente il backup dei tuoi database se uno va in crash, facendo apparire gli schiavi come padroni. Pertanto, i server delle applicazioni e i server di database sono tutti monitorati e ridimensionati in base alle esigenze.

Il ridimensionamento dei siti Web è difficile e costoso. Utilizzando la potenza del Cloud Computing, Scalr ridimensiona automaticamente l'infrastruttura del tuo sito Web: ridimensiona il database, ridimensiona i server delle app e persino aggiunge e configura i server di bilanciamento del carico e di memorizzazione nella cache!

http://code.google.com/p/scalr/


1

Un software di bilanciamento del carico gratuito come ZenLoader sarebbe il trucco. È un software open source, paghi solo se hai bisogno di supporto.

Ho sentito che coprirà i tuoi requisiti se hai già acquistato i server.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.