[ruby-it] applicazione rails con tre database

Gillengam Gillengam gillengam a gmail.com
Lun 8 Giu 2009 12:20:19 CEST


Luca Guidi wrote:
> Il rapporto applicazione -> mongrel è 1-n.

Ok, questo lo avevo capito. Ma allora, ragionando in questi termini, 
possiamo dire che il rapporto mongrel -> applicazione è 1-1?

> Quindi si parte da un'istanza di mongrel per un'applicazione, se questa
> dovesse rivelarsi insufficiente si aggiungono altre istanze.
> Di default un'applicazione Rails è single-threaded, il che significa
> che, nel suo contesto (un mongrel) riesce a soddisfare una richiesta per
> volta. Dalla versione 2.2 è possibile cambiare questa configurazione.
>    .
>    .
>    .
> Per questo si utilizza un web server che faccia da balancer verso il tuo
> cluster di nodi. Il suo compito è di ascoltare sulla porta 80 e di
> forwardare le richieste all'applicazione e al path giusto.

Ok

> Questo ci permette anche di avere più applicazioni (quindi più cluster)
> su una sola macchina, il web server sarà incaricato di decidere non solo
> quale applicazione è responsabile per una determinata request, ma anche
> nodo dovrà soddisfarla.

Tornando al discorso di poc'anzi ogni nodo è comunque dedicato ad una sola 
applicazione (se è vero che il rapporto mongrel -> applicazione è 1-1), 
giusto?
Poi sullo stesso server potrò avere più applicazioni, delle quali una 
necessità di 3 mongrel, una di 10 mongrel, un'altra ancora di un solo 
mongrel ... e così via. Ho capito bene?

> Quando compri un servizio di hosting, generalmente si inizia con un VPS,
> hai a disposizione una macchina virtuale, che ti permette di agire solo
> sui tuoi clusters e web server.
> Quindi un server fisico ha tante macchine virtuali, le quali hanno un
> web server ed una o più applicazioni, ciascuna delle quali ha un cluster
> di application servers.

Mi pare che questo confermi quanto appena affermato, il rapporto mongrel 
-> applicazione è 1-1.

> Per un'applicazione che ha un carico medio di 20 persone un cluster di
> tre nodi dovrebbe andare bene.
> Consigli:
> - application server: passenger, mongrel o thin
> - web server: apache o nginx
> Passenger, a differenza degli ultimi due, ha una sola istanza e provvede
> di creare più processi per soddisfare un carico di richieste maggiore.

Grazie per i consigli. Ho visto in rete che anche lighttpd è molto 
gettonato.

> Ti consiglio di leggere Deploying Rails Applications
> http://www.pragprog.com/titles/fr_deploy/deploying-rails-applications

Lo farò sicuramente.

> Luca

Grazie infinite per la tua pazienza. Ciao.
-- 
Posted via http://www.ruby-forum.com/.


More information about the Ml mailing list