Posts

Showing posts from October, 2017

Patrones de diseño para aplicaciones de alta disponibilidad en Azure - Resilient Applications (Parte I: Retry Policy)

Image
En un sistema distribuido, los fallos sucederán. El hardware puede fallar. La red puede tener fallas ocasionales. Rara vez, un servicio o región entera puede experimentar una interrupción, incluso en interrupciones programadas. La creación de una aplicación confiable en la nube es diferente de la construcción de una aplicación confiable en una configuración empresarial. Mientras que históricamente puede haber comprado hardware de gama alta para hacer escalamiento vertical (scale up) , en un entorno de nube debe escalar de manera horizontal (scale out) en lugar de escalar verticalmente (scale up) . Los costos de los entornos en la nube se mantienen bajos a través del uso de hardware de productos básicos. En lugar de centrarse en prevenir los fallos y optimizar el "tiempo medio entre fallos" , en este nuevo entorno el enfoque cambia a "tiempo medio para restaurar" . El objetivo es minimizar el efecto de un fallo. ¿Que es resiliencia? Resiliencia es la capacidad d

Practicas de diseño de Caching distribuido en Azure

Image
Para las aplicaciones distribuidas de gran escala, el acceso a datos de aplicaciones stateful es crítico. El rendimiento global de la aplicación y la latencia están limitados normalmente por la rapidez con la que se pueden recuperar, compartir y actualizar los datos y los contextos necesarios. Los servicios distribuidos de almacenamiento en caché, como Caching de Azure y memcached, han evolucionado en respuesta a esta necesidad. Las aplicaciones deben utilizar una plataforma de memoria caché distribuida. Tener en cuenta las siguientes directrices para el diseño de Caching distribuido: 1. Utilice una plataforma de almacenamiento en memoria caché distribuida como Worker Role dentro del servicio hospedado en Azure. Esta gran proximidad a los clientes de la memoria caché reduce las barreras de latencia y rendimiento producidas por el recorrido del equilibrador de carga. 2. Use la plataforma de almacenamiento en memoria caché distribuida como repositorio principal para tener acceso a los