Forum: Rails-ES Instalación de un servidor, consejo

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
congrio (Guest)
on 2009-04-21 09:10
(Received via mailing list)
Hola lista.

Tenemos que montar un servidor Rails para una aplicación que
probablemente va a tener muchas visitas/usuarios. En otros servidores
hemos estado usando mongrel + apache y todo va bien pero ahora no
estoy seguro de que sea la opción más recomendable debido a que vamos
a tener un volumen de tráfico considerable. Estoy hecho un lío...
passenger, phusion passenger, nginx, etc etc.

¿Qué nos recomendáis instalar como servidor Rails?
¿Algún buen howto para dejar andando un buen servidor Rails?
Temas de caché, ¿con que lo hacéis?

Gracias!
Emili P. (Guest)
on 2009-04-21 12:13
(Received via mailing list)
Que es para ti un "volumen de tráfico considerable"?
Yo montaria apache/nginx + passenger, con nginx tendrás algo más de
rendimiento. Optimizas bien las consultas a la base de datos y usas
cache
donde puedas.

Si este stack no te da el rendimiento suficiente, hace pruebas con  otro
stack, pero solo cuando realmente veas que esto no te sirve, no empieces
la
casa por el tejado.

PD: los de basecamp estan pasando a passenger (o ya lo utlizan, no se
seguro), y ellos si que tienen un volumen considerable.

2009/4/21 congrio <removed_email_address@domain.invalid>
javier ramirez (Guest)
on 2009-04-21 12:50
(Received via mailing list)
> Tenemos que montar un servidor Rails para una aplicación que
> probablemente va a tener muchas visitas/usuarios. En otros servidores
> hemos estado usando mongrel + apache y todo va bien
Ten en cuenta que hasta hace unos meses la opción para poner en
producción cualquier sitio en rails pasaba por mongrel. Sitios con mucho
tráfico usan esa solución sin problemas.

En cuanto a Apache, qué te voy a decir que no sepas. Está en todas
partes. Rails y no Rails.

Nginx tiene mejor rendimiento que Apache, y passenger simplifica los
deploys (y de paso en algunos casos te mejora el uso de memoria), pero
eso no significa que las soluciones anteriores no sean buenas. De hecho
si usabas passenger hasta hace dos días (literalmente) no
había opciónde montarlo en nginx, sino que había que ponerlo sobre Apache sí o
sí.
Vamos, que si quieres hacer la instalación standard ahora, lo más típico
sería un Apache+Passenger. Pero que lo otro te funcionará igualmente.

Y para la caché, lo más normal es tirar de memcache. Los sitios muy
gordos además de esa caché utilizan proxy caches del tipo squid, pero ya
cuando se empieza a necesitar esas cosas también suelen usarse CDNs y
otros recursos que en sitios a escala humana no hacen falta realmente.

saludos,

j

--
javier ramírez

..i do ruby on rails development in madrid, spain, at
http://www.aspgems.com
..you can find out more about me on http://formatinternet.wordpress.com
and http://workingwithrails.com/person/5987-javier-ramirez
congrio (Guest)
on 2009-04-21 13:58
(Received via mailing list)
Gracias Emili y Javier.

Pues tiraremos por nginx + passenger y memcache

En cuanto a la pregunta "Qué es para ti un volumen de tráfico considerable?"
Pues, la verdad, buena pregunta... no sabría decirte.
Es una aplicación para un banco a nivel nacional, sus clientes (que el
primer día entrarán en masa y seguro que colapsan el sistema...) y para los
clientes, que entraran más progresivamente pero en mucha mayor cantidad.

Otra cosa que no tengo clara... tenemos un servidor dedicado para esta
aplicación con éstas características:
Intel Xeon Quad 4x 2.66+ GHz
8 GB DDR2
RAID 1
100 Mbps (hacia internet)
Ubuntu 8.10 (server 64bits)

Todo va a estar ahí, base de datos y demás servicios (puede que correo y
alguna cosa más). Se que sin saber que tráfico va a haber no se puede
asegurar nada, pero, como lo veis?





----- Mensaje original ----
De: javier ramirez <removed_email_address@domain.invalid>
Para: La lista sobre Ruby On Rails (rubyonrails.com) en castellano
<removed_email_address@domain.invalid>
Enviado: martes, 21 de abril, 2009 10:49:08
Asunto: Re: [Ror-es] Instalación de un servidor, consejo


> Tenemos que montar un servidor Rails para una aplicación que
> probablemente va a tener muchas visitas/usuarios. En otros servidores
> hemos estado usando mongrel + apache y todo va bien
Ten en cuenta que hasta hace unos meses la opción para poner en
producción cualquier sitio en rails pasaba por mongrel. Sitios con mucho
tráfico usan esa solución sin problemas.

En cuanto a Apache, qué te voy a decir que no sepas. Está en todas
partes. Rails y no Rails.

Nginx tiene mejor rendimiento que Apache, y passenger simplifica los
deploys (y de paso en algunos casos te mejora el uso de memoria), pero
eso no significa que las soluciones anteriores no sean buenas. De hecho
si usabas passenger hasta hace dos días (literalmente) no
había opciónde montarlo en nginx, sino que había que ponerlo sobre Apache sí o
sí.
Vamos, que si quieres hacer la instalación standard ahora, lo más típico
sería un Apache+Passenger. Pero que lo otro te funcionará igualmente.

Y para la caché, lo más normal es tirar de memcache. Los sitios muy
gordos además de esa caché utilizan proxy caches del tipo squid, pero ya
cuando se empieza a necesitar esas cosas también suelen usarse CDNs y
otros recursos que en sitios a escala humana no hacen falta realmente.

saludos,

j

--
javier ramírez

..i do ruby on rails development in madrid, spain, at
http://www.aspgems.com
..you can find out more about me on http://formatinternet.wordpress.com
and http://workingwithrails.com/person/5987-javier-ramirez
_______________________________________________
Ror-es mailing list
removed_email_address@domain.invalid
http://lists.simplelogica.net/mailman/listinfo/ror-es
Guillermo (Guest)
on 2009-04-21 14:17
(Received via mailing list)
2009/4/21 congrio <removed_email_address@domain.invalid>

> En cuanto a la pregunta "Qué es para ti un volumen de tráfico
> considerable?" Pues, la verdad, buena pregunta... no sabría decirte.
> Es una aplicación para un banco a nivel nacional, sus clientes (que el
> primer día entrarán en masa y seguro que colapsan el sistema...) y para los
> clientes, que entraran más progresivamente pero en mucha mayor cantidad.
>

Si sabes que vas a tener una demanda grande, y no sabes lo que puede
suponer, existen varios tiempos que debes de tener en cuenta, según mi
experiencia y escaso conocimiento:

* El tiempo de desarrollo. Este tiempo es fijo, así que ante un colapso
del
sistema... no nos sirve.
* El tiempo de desplegar una nueva máquina. Según el datacenter/compañía
que
estés, poner una máquina nueva pueden ser segundos trabajando en lo que
llaman la Nueve(EC2), o semanas. Parece una tontería, pero para el
cliente,
no es lo mismo tener un downtime de unas horas a unos días. Además, si
con
otra máquina no es suficiente, tendrías que esperar el doble de tiempo.
Con
muchos servicios como EC2, puedes poner a monit para que levante otra
instancia si la cola del mongrel es muy larga o si la carga de la
máquina
sobre 100 (que no el micro que tienes creo que no es tan descabellado).

Ante esta arquitectura, tendría una máquina al principio y según me
fuese
encontrando problemas seguiría más o menos así:

* Lo primero sería sacar la base de datos a otra máquina.
* Después según si la aplicación consume más recursos de bases de datos
o de
aplicación, pondría un esclavo a la base de datos, o más maquinas, con
una
máquina intermedia que balancesasen entre estas dos, o que ellas incluso
se
balancesasen entre sí. Añadiendo más IP al mismo dominio.


De forma paralela estudiar y solucionar cada cuello de botella.
Carlos Matallín (Guest)
on 2009-04-21 14:55
(Received via mailing list)
Hola,

El otro día estuve leyendo un artículo interesante sobre saber
localizar tus cuellos de botella (entre otras cosas) a la hora de
trabajar con Rails. No propone una solución definitiva pero si expone
las diferentes herramientas que se pueden utilizar para encontrar en
qué parte de la aplicación hay que mejorar el rendimiento.

Un saludo y espero que te sirva ;)

http://paulstamatiou.com/2009/04/01/full-time-star...

2009/4/21 congrio <removed_email_address@domain.invalid>:
> ¿Algún buen howto para dejar andando un buen servidor Rails?
> Temas de caché, ¿con que lo hacéis?
>
> Gracias!
>
>
> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>



--
Carlos Matallín
removed_email_address@domain.invalid
http://c.matallin.com
+34 607377647
This topic is locked and can not be replied to.