Aspectos básicos de la arquitectura de aplicaciones de Azure AD

Esta biblioteca de contenido presenta un enfoque estructurado para diseñar en Azure aplicaciones que sean escalables, seguras, resistentes y con una alta disponibilidad. Esta guía se basa en prácticas probadas que hemos aprendido a través de las interacciones con los clientes.

Introducción

La nube está cambiando la forma en que se diseñan y protegen las aplicaciones. En lugar de ser monolitos, las aplicaciones se descomponen en servicios menores y descentralizados. Estos servicios se comunican a través de API o mediante el uso de eventos o de mensajería asincrónica. Las aplicaciones se escalan horizontalmente, agregando nuevas instancias, tal y como exigen las necesidades.

Estas tendencias agregan nuevos desafíos. Los estados de la aplicación se distribuyen. Las operaciones se realizan en paralelo y de forma asincrónica. Las aplicaciones deben ser resistentes cuando se produzcan errores. Las aplicaciones son continuamente el destino de actores malintencionados. Las implementaciones deben estar automatizadas y ser predecibles. La supervisión y la telemetría son fundamentales para obtener una visión general del sistema. Esta guía está diseñada para ayudarle a sortear estos cambios.

Local tradicionalNube moderna
Monolítica
Diseñada para una escalabilidad predecible
Base de datos relacional
Procesamiento sincronizado
Diseño para evitar errores (MTBF)
Actualizaciones grandes ocasionales
Administración manual
Servidores de copo de nieve
Descompuesto
Diseñado para un escalado elástico
Persistencia de Polyglot (combinación de tecnologías de almacenamiento)
Procesamiento asincrónico
Diseño para errores (MTTR)
Pequeñas actualizaciones frecuentes
Administración automatizada
Infraestructura inmutable

Estructura de esta guía

La guía de los aspectos básicos de la arquitectura de aplicaciones de Azure se organiza como una serie de pasos, desde la arquitectura y el diseño a la implementación. Para cada paso, hay instrucciones auxiliares que le ayudarán a diseñar la arquitectura de la aplicación.

Diagrama que muestra la estructura de esta guía, con las secciones de este artículo representadas en un diagrama de flujo.

Estilos de arquitectura

La primera decisión es la más importante. ¿Qué tipo de arquitectura va a crear? Puede ser una arquitectura de microservicios, una aplicación con n niveles más tradicional o una solución de macrodatos. Hemos identificado varios estilos de arquitectura distintos. Cada uno presenta ventajas y desafíos.

Más información: Estilos de arquitectura

Opciones de tecnología

Si conoce el tipo de arquitectura que está creando, ya puede empezar a elegir las principales piezas tecnológicas de la arquitectura. Las siguientes opciones tecnológicas son críticas:

  • Proceso hace referencia al modelo de hospedaje para los recursos informáticos en los que las aplicaciones se ejecutan. Para más información, vea Elección de un servicio de proceso.

  • Los almacenes de datos no solo incluyen bases de datos, sino también almacenamiento destinado a las colas de mensajes, memorias caché, datos de registros y cualquier otro elemento que una aplicación pueda conservar en algún tipo de almacenamiento. Para más información, consulte Elección de un almacén de datos.

  • Las tecnologías de mensajería permiten el envío de mensajes asincrónicos entre los componentes del sistema. Para más información, consulte Elección de un servicio de mensajería.

Es probable que tenga que seleccionar más elementos tecnológicos a lo largo del proceso, pero estos tres elementos (proceso, datos y mensajería) son fundamentales para la mayoría de las aplicaciones en la nube y determinarán muchos aspectos del diseño.

Diseño de la arquitectura

Una vez que haya elegido el estilo de la arquitectura y los principales componentes tecnológicos, estará listo para abordar el diseño específico de la aplicación. Cada aplicación es diferente, pero los siguientes recursos pueden ayudarle a lo largo del proceso:

Arquitecturas de referencia

En función de cuál sea su escenario, una de nuestras arquitecturas de referencia puede ser un buen punto de partida. Cada arquitectura incluye procedimientos recomendados, así como consideraciones acerca de la escalabilidad, disponibilidad, seguridad, resistencia y otros aspectos del diseño. La mayoría también incluye una solución implementable o una implementación de referencia.

Principios de diseño

Hemos identificado diez principios de diseño de alto nivel para que la aplicación sea más escalable, resistente y administrable. Estos principios de diseño se aplican a todos los estilos de arquitectura. Durante el proceso de diseño, se deben tener en cuenta estos diez principios de diseño de alto nivel. Para más información, consulte Principios de diseño.

Patrones de diseño

Los patrones de diseño de software se pueden repetir y se ha demostrado que resuelven problemas específicos. Nuestro catálogo de patrones de diseño en la nube aborda desafíos específicos de los sistemas distribuidos. Abordan aspectos como la disponibilidad, la alta disponibilidad, la excelencia operativa, la resistencia, el rendimiento y la seguridad. Nuestro catálogo de patrones de diseño se puede encontrar aquí.

Procedimientos recomendados

Nuestros artículos de procedimientos recomendados cubren diversas consideraciones de diseño, como el diseño de la API, el escalado automático, la creación de particiones de datos, el almacenamiento en caché, etc. Examínelos y aplique aquellos procedimientos recomendados que sean adecuados para su aplicación.

Recomendaciones de seguridad

En nuestros procedimientos recomendados de seguridad se describe cómo garantizar que ningún actor malintencionado pueda poner en peligro la confidencialidad, integridad y disponibilidad de su aplicación.

Fundamentos de calidad

Una aplicación de éxito en la nube se centrará en cinco fundamentos de calidad del software: confiabilidad, seguridad, optimización de costos, excelencia operativa y eficiencia del rendimiento.

Saque provecho del marco de buena arquitectura de Microsoft Azure para evaluar la arquitectura con respecto a estos cinco pilares.

Pasos siguientes