Infraestructura de sistemas de una web
Posteado Por CatrianHablar de un modelo de infraestructura de sistemas que deba tener una web es como decir que el mejor coche del mundo es el Porsche 911 Carrera GT, es decir, sería faltar a la verdad y no porque el coche sea malo sino porque lo primero que cualquiera de vosotros diría sería: el mejor coche del mundo para quién, ¿para un amante de la velocidad, un padre de familia o una mujer mayor? Por supuesto que sería muy lógico preguntarnos o afirmar que sería el mejor coche dependiendo de quién lo dice, seguramente para Fernando Alonso lo sería pero no lo tenemos muy claro si para una madre con 3 hijos pequeños lo fuese.
El mismo escenario descrito anteriormente con los tipos de coches nos encontramos a menudo en el mundo de la programación web y la infraestructura de sistemas. No todas las webs son iguales y por tanto no todos los proyectos demandan el mismo tipo de infraestructura, de hecho hay muchos websites que pueden ser 100% estáticos (sin ningún gestor de contenidos) pero pese a ello necesiten una gran infraestructura detrás para poder soportar una gran cantidad de tráfico y visitantes, por el contrario tendríamos como ejemplo una compleja intranet corporativa o aplicación web online de una empresa que puede tirar de grandes bases de datos pero únicamente es consultada por un puñado de usuarios, aunque esto también daría pie a que pensáramos que no por pocos usuarios que la consulten signifique que no consuman recursos de sistemas, de ahí que claramente podemos deducir que todo proyecto es un mundo y por tanto ANTES DE LLEVARSE a cabo la planificación de sistemas debe estructurarse y planificarse hasta el más mínimo detalle, pues estamos seguros que ninguno de vosotros quiere oír la palabras migración, reestructuración de datos o bases de datos y similares, pues todas ellas suelen venir acompañadas de líos, pérdidas de tiempo, estrés y días de incertidumbre hasta que logramos estabilizar la plataforma.
Una vez llegados a este punto, y teniendo en cuenta que la planificación de sistemas es tan importante como la misma estructura de datos de nuestro proyecto, debemos entender qué estructura deberíamos tener a mano para garantizarnos unos mínimos de calidad y estabilidad técnica en los proyectos que desarrollemos, así que a continuación finalizaremos este post con una serie de herramientas/elementos básicos que tendríamos en cuenta para un proyecto web de mediana envergadura:
1. Escribir un manual de procedimientos que indique los responsables de sistemas y programación y unifique accesos y contraseñas
2. Disponer de un sistema de control de versiones (recientemente hablamos de SVN y GIT en uno de nuestros posts)
3. Configurar un sistema de gestión y almacenamiento de incidencias (uno muy popular es el Mantis)
4. Hacer uso de un servidor de PRE PRODUCCIÓN donde trabajarán los miembros del equipo y donde se realizarán testados
5. Contar con un servidor de PRODUCCIÓN donde se suban las actualizaciones aprobadas en el servidor de PRE PRODUCCIÓN
6. Disponer de un sistema de backup continuo y dependiendo del proyecto en modo «espejo»
7. Configurar un servicio CDN que permita replicar el sitio web en diferentes servidores para optimizar la carga de datos
8. Monitorizar continuamente los servidores e instalar apps que envíen alarmas en caso de urgencias o novedades puntuales
9. Disponer de un equipo de soporte de sistemas, en función del proyecto lo recomendable es que tenga capacidad de servicio 24/7
10. Realizar periódicamente auditorías de seguridad y test de estrés de bases de datos para comprobar la capacidad técnica del site
Seguramente vosotros tendréis muchas cosas más que agregar, no obstante hemos querido compartir estos 10 puntos y ponerlos de relieve para que sirvan como punto comparativo o simplemente como punto de partida para valorar si creemos que la infraestructura de sistemas utilizada es la adecuada o no, no obstante es probable que solamente tú o el equipo de gestión de sistemas pueda decirte a ciencia cierta si vas por buen camino o no.
Social tagging: servidores