El Wed, 08-02-2006 a las 12:23 -0500, Angel Rengifo escribió:

> ¿Como saber si el hardware que adquiriremos sera suficiente o no?
> ¿Como puedo hacer un analisis adecuado para que el hardware a comprar
> no me quede chico ni grande haciendo planes a futuro? ¿Debo hacer
> alguna especie de benchmarking o algo por el estilo?

El hardware que adquieres podrá ser suficiente en la medida que tus
proyecciones no se alejen mucho de la realidad ó que en el futuro
(incluso cercano) el escenario no cambie...

¿Que puedes hacer al respecto? Simplemente adaptarte.. y el resto
del equipo, hasta el "jefe" deben entender esto.. 

Sobre como hacer el análisis, puedes comenzar con lo mas simple,
haciendo sencillas operaciones aritméticas en una hoja de cálculo 
sin mas conocimientos que los del colegio ó llegar efectivamente
a hacer pruebas de stress y cosas por el estilo... 

Ambas cosas son recomendadas, pero podemos comenzar por lo mas simple..

> Espero que alguien que tenga experiencia en estas situaciones pueda
> darme algunas pautas o ideas a considerar para poder hacer la mejor
> eleccion a la hora de comprar un servidor.

Creo que ayudaria que envies a la lista los enlaces a las páginas
con el detalle de un equipo hw específico e indicando claramente
que uso le piensas dar pedir opinión sobre equipos y configuraciones
concretas.. hablar en general es muy gaseoso...

Un ejemplo clásico es el de Apache.. si usas Apache 1 ó Apache 2
en modo pre-fork, cada vez que se necesita atender una solicitud
se crea una copia del proceso padre que tiene el mismo tamaño en
RAM.. 

Un apache simple sin mod_php a veces ocupa 2 o 4MB y un apache con
mod_php puede llegar hasta a 12MB *POR INSTANCIA*, esto es un poco
referencial y entrar al detalle del *verdadero* uso de memoria es
un poco mas complicado, pero podemos basarnos en la salida del comando
top ó de "ps aux" para hacernos una idea..

Esto significa que si tu server tiene 512 MB de RAM y si el sistema
operativo mas el resto de servicios ocupan unos 100, digamos 112 MB,
te quedan 400 para usar con Apache, es decir, un maximo de 40 instancias
si cada proceso ocupa 10MB de RAM.. como ves, aritmética de colegio..

¿Que significan 40 instancias simultáneas? Significa 40 personas
haciendo click al mismo tiempo exacto. ¿Cuál es la probabilidad
de que ocurra esto tu organización? En la práctica, yo he visto
que esto sucede cuando digamos, hay 4000 usuarios haciendo uso
del sitio web en ese momento.. osea, una relación 100 a 1 mas
o menos.. todo esto es referencial pero te puede dar una idea..

La realidad no es tan simple.. pero tampoco demasiado compleja.. 
podrias evaluar simultáneamente el uso de memoria de MySQL
ó la base de datos que estes usando, etc, etc..

¿Hay alternativas? Si, desde luego, desde lingerd en Apache 1 hasta
reemplazar Apache por lighttpd y correr PHP usando FastCGI, que es
una técnica que Ruby On Rails ha puesto de moda (o ha hecho "renacer")
en los últimos meses/años y que por ejemplo aqui en Perú amigos de
la lista como Gustavo Picón ó sitios web como Perublogs.com estan
usando este esquema con éxito.

Algo mucho mas simple que el 90% de los webmaster olvidan es dedicar
otra instancia de servidor web a los contenidos estáticos.. yo he
probado el software Cherokee y no solo es rapidísimo sino muy liviano
para este fin...

Un servidor de gráficos tiene sentido si el webserver usa múltiples
procesos con módulos pesados dentro.. pero en un demonio multihilos que
se apoya en FastGCI ó SCGI ya no es necesario, ya que el PHP no esta
cargado en memoria y se utiliza bajo demanda porque ahora corre como
un servicio mas.. (ejemplo php -b 8080)

¿Conclusión? Hay que investigar un poquito como funciona el software
que vas a usar, cuantos recursos consume, cuales son los límites del
software y el hardware, que tanto lo exige la aplicación, etc, etc.

No es cosa de aplicar recetas que le han funcionado a otros a ciegas
sino de aplicar un poco de inteligencia (un poquito nomas) a tu caso
concreto.

Sobre el uso del disco duro también puedes recoger información en
forma empírica y extrapolarla al caso de tener mucho mas usuarios...

En la práctica, podrias estar dejando algo de lado en tu análisis
y a la hora de la hora las cosas podrian ser un poco distintas pero
ya estas comenzando bien tratando de planificar un poco las cosas
y definitivamente buscar una metodología seria lo mejor...

Es cosa de investigar.. por suerte ahora hay blogs.. y porque no,
preguntar aca en la lista sobre optimizaciones de servicios y casos
concretos..

Suerte,

Antonio.

_______________________________________________
Linux-plug mailing list
[email protected]
http://www.linux.org.pe/cgi-bin/mailman/listinfo/linux-plug

Responder a