Además de los enlaces redundantes, también se requiere suficiente ancho de banda para satisfacer la demanda de datos, un ejemplo puede ser una conexión unmetered de 30-60 mbits burstable. Es importante que pueda crecer en caso de que se requiera mayor ancho de banda.
Recursos de computo
Esto es muy dependiente de los servicios proporcionados y el tráfico que se intenta recibir, sin embargo, una regla importante es contar con suficiente memoria y capacidad de procesamiento, por lo cual servidores con 4 GB de ram, y al menos 2 procesadores o procesadores dual core son recomendables.
También es importante contar con al menos 2 servidores similares de los cuales uno sea el respaldo del servidor principal, esto para contar con un respaldo en caso de que surja algún problema.
Configuración de red
La parte mas importante es el balanceo de carga entre servidores, esto se puede lograr vía dns, vía firewall, o hardware y software especializado. El objetivo del balanceo de carga es distribuir el tráfico entre múltiples servidores de forma que ninguno se sature o supere su capacidad de procesamiento.
Configuración de aplicación
En caso de que la aplicación web sea muy exigente en el uso de recursos de computo, se puede recurrir a caches para optimizar el desempeño. Existen muchos tipos de cache, de entre los cuales destacan los siguientes:
* Proxy cache
* Cache de archivos y datos
* Cache de base de datos
* OpCode cache
El proxy cache es utilizado cuando los archivos servidos por el servidor web, se encuentran a su vez en otros servidores, el objetivo es reducir la cantidad de peticiones hacia el otro servidor para servirlas directamente.
El cache de archivos y datos puede ser implementado de diferentes formas, por ejemplo, cuando se tiene un script que realiza tareas complejas, lo ideal es evitar que se ejecute una y otra vez, para lo cual se genera el resultado y se almacena en un archivo, después este es el que se sirve reduciendo así la cantidad de veces que se ejecuta el script.
Sobre el cache de base de datos, muchos gestores ya lo tienen implementado por defecto, mysql es uno de ellos. El objetivo es reducir el tiempo de espera y procesamiento de las consultas.
El OpCode cache se implementa cuando se hace uso de un lenguaje script que es el que procesa los datos, y que por su naturaleza de ser interpretado, se ejecuta cada vez que se hace una petición. Con este tipo de cache, se convierte en código nativo al parser del script reduciendo el tiempo de análisis y ejecución del script.
El objetivo de utilizar caches de diferentes tipos es mantener al mínimo la ejecución de los procesos demandantes, para que de esa forma, el servidor siempre este disponible y con la menor carga posible.
Ver mas en:
Enlaces:
