Atrás

Hosting y
monitorización

El deseo de todo responsable es que su aplicación tenga millones de usuarios y visitas, pero poder soportarlos supone el mayor reto de todo proyecto web de éxito.

Las necesidades de una aplicación de bajo tráfico no tienen nada que ver con los de una aplicación de alto tráfico y por lo tanto, el buen análisis y definición de infraestructuras que permitan aumentar y disminuir de forma gradual los recursos en base a la variación de las visitas puede evitar grandes problemas y costes.

Gracias a la llegada de proveedores de infraestructura (IaaS) es posible dimensionar de forma automática (autoescalado) los recursos de forma directamente proporcional al éxito del proyecto.

En Mr. Milú acompañamos a nuestros clientes durante todo el proceso ofreciendo los servicios que requiere:

- Participamos en la definición de la arquitectura de sistemas

- Nos encargamos del hosting y despliegue de todas las herramientas para permitir el autoescalado, si así se precisa

- Monitorizamos el estado de la infraestructura ofreciendo servicios de SLA

- Analizamos las métricas de cada servicio en búsqueda de la optimización constante

Definición

Al contar con una misma agencia que se encargue del desarrollo y la infraestructura de tu aplicación, garantizamos la sintonía entre equipos y evitamos sorpresas.

Elección del proveedor de infraestructura
En la actualidad, hay una gran variedad de opciones y en función de los requisitos de cada proyecto puede ser interesante uno u otro.

En Mr. Milú gestionamos tanto servidores dedicados físicos como IaaS: AWS, Google App Engine, etc

Definición de la arquitectura
Aislamos cada responsabilidad de la infraestructura y la hacemos independiente para permitir hospedarla en una misma máquina o en varias, de forma que en cada fase del proyecto utilicemos los recursos mínimos.

Base de datos
Basamos la elección del motor de base de datos y su optimización en los requerimientos del producto. Tenemos una clara preferencia por PostgreSQL gracias a su dualidad: SQL y almacenamiento de documentos (JSON fields, etc) y por contar con la extensión de búsquedas geolocalizadas más potente: PostGIS.

Sistemas de cacheado
Una buena política de cacheado, tanto en el back como frontal, permite alcanzar más usuarios con menos recursos. Las herramientas que más utilizamos para estos cometidos son: Varnish como proxy de cacheado y Redis / memcached para el cacheado a nivel aplicación.

Procesamiento de tareas asíncrono
No bloquear al servidor con llamadas largas se convierte en un requisito para poder soportar concurrencia. La distribución de tareas entre varios team por colas de prioridad que ofrecen Celery junto con RabbitMQ, nos permite realizar tareas de forma asíncrona y distribuida, permitiendo la escalabilidad y aislamiento de responsabilidad.

Automatización

La automatización de procesos es clave para garantizar la escalabilidad de una aplicación web.

En Mr. MIlú realizamos, en la fase inicial de todo desarrollo, la implementación del despliegue automático de la infraestructura exacta que nos vayamos a encontrar en la salida a producción. Mismos servicios, mismas versiones, permiten reducir puntos de fallo y agilizan la réplica de entornos. Con este fin, usamos Ansible en todos nuestros proyectos.

Herramientas como Ansible nos permiten estandarizar procesos independientemente del proveedor que utilicemos. Pese a ello, adaptarnos al proveedor y sus técnicas de autoescalado, como Amazon Web Services, que utilizamos desde hace 5 años, nos ahorra en muchas ocasiones trabajo.

SLA

El monitorización y profiling de la infraestructura tiene doble objetivo:

- Detectar posibles fallos y agilizar la resolución de los mismos

- Análisis y optimización de la aplicación y servicios utilizados por la infraestructura

Algunas de las herramientas que utilizamos son: New Relic, Pingdom, Nagios, Sentry, Pager Duty....

Atrás

En nuestro sitio web utilizamos cookies para mejorar tu experiencia de usuario. Si continúas navegando entendemos que aceptas las condiciones de uso.

X