Generación de Arquitecturas de Servicios utilizando Azure SAS
Introduccion
Diez principios de diseño para A.Azure
Estilo de Arquitectura con Microservicios
Particiones alrededor de limites
Diseño para las operaciones
Uso de Servicios administrados
Coordinacion minimizada
Usar el mejor almacen de datos para el trabajo
Redundancia
Diseñe para evolucionar
Diseñe para la recuperación automatica
Los servicios son los responsables de conservar sus propios datos o estado externo.
Cree teniendo en cuenta las necesidades de la empresa
Estilo de Arquitectura con Microservicios
Estilo de arquitectura con microservicios
Las ventajas de los microservicios tienen un "precio". Estos son algunos de los aspectos que deben tenerse en cuenta
Equipos pequeños y centrados. Un microservicio debe ser lo suficientemente pequeño como para que un solo equipo de
características lo pueda compilar, probar e implementar.
Agilidad, Dado que microservicios se implementan de forma independiente, resulta más fácil de administrar las correcciones de errores y las versiones de características
.
:
Desafíos
Integridad de datos
Administración
Control de versiones
Serie de aptitudes
Cada microservicio es responsable de la conservación de sus propios datos. Como consecuencia, la coherencia de los datos puede suponer un problema
Estos son servicios que se comunican entre sí mediante API bien definidas.
Para tener éxito con los microservicios se necesita una cultura de DevOps consolidada. El registro correlacionado entre servicios puede resultar un desafío.
Es posible que varios servicios se actualicen en cualquier momento; por lo tanto, sin un cuidadoso diseño, podrían surgir problemas con la compatibilidad con versiones anteriores o posteriores.
Los microservicios son sistemas muy distribuidos. Evalúe cuidadosamente si el equipo tiene los conocimientos y la experiencia para desenvolverse correctamente.
¿ Microservicios?
Es una arquitectura de aplicación.
Procedimientos
recomendados
Para obtener instrucciones detalladas sobre cómo crear una arquitectura de microservicios en Azure
Su ámbito de diseño, implementación y gestión es la modularización de aplicaciones
No es un concepto de integración de aplicaciones
Admite la programación políglota. Es decir, no es necesario que los servicios compartan la misma pila de tecnología, las bibliotecas o los marcos.
Base de código pequeña. En las aplicaciones monolíticas, con el paso del tiempo se da la tendencia de que las dependencias del código se acaben enredando.
Diseño escalado horizontal
Designing, building, and operating microserviceson Azure (Diseño, creación y funcionamiento de microservicios en Azure).
¿Qué son los microservicios?
Mezcla de tecnologías. Los equipos pueden elegir la tecnología que mejor se adapte al servicio de una combinación de pilas de tecnología, según corresponda.
Aislamiento de errores. Si un microservicio individual no está disponible, no interrumpe toda la aplicación, siempre que los microservicios de nivel superior estén diseñados para controlar los errores correctamente.
Los microservicios son pequeños e independientes, y están acoplados de forma imprecisa
Cada servicio es un código base independiente.
Escalabilidad. Los servicios se pueden escalar de forma independiente, lo que permite escalar horizontalmente los subsistemas que requieren más recursos.
Los servicios pueden implementarse de manera independiente.
Aislamiento de los datos. Al verse afectado solo un microservicio, es mucho más fácil realizar actualizaciones del esquema
Desafios
Desarrollo y pruebas. La escritura de un servicio pequeño que utilice otros servicios dependientes requiere un enfoque que no sea escribir una aplicación tradicional monolítica o en capas.
Complejidad. Una aplicación de microservicios tiene más partes en movimiento que la aplicación monolítica equivalente.
Microservicios
Falta de gobernanza. El enfoque descentralizado para la generación de microservicios tiene ventajas, pero también puede causar problemas.
Congestión y latencia de red. El uso de muchos servicios pequeños y detallados puede dar lugar a más comunicación interservicios.
Además de los propios servicios, hay otros componentes que aparecen en una arquitectura típica de microservicios: Administración e implementación y puerta de enlace de API.
Integridad de datos. Cada microservicio es responsable de la
conservación de sus propios datos.
Estos son servicios que se comunican entre sí mediante API bien definidas.
Admite la programación políglota. Es decir, no es necesario que los servicios compartan la misma pila de tecnología, las bibliotecas o los marcos.
Los servicios son los responsables de conservar sus propios datos o estado externo.
Administración. Para tener éxito con los microservicios se
necesita una cultura de DevOps consolidada.
Control de versiones. Las actualizaciones de un servicio no deben interrumpir servicios que dependen de él.
Serie de aptitudes. Los microservicios son sistemas
muy distribuidos.
Entre las ventajas de usar una puerta de enlace de API se encuentran las siguientes:
Entre ellas tenemos:
Los servicios pueden utilizar los protocolos de mensajería que no son fáciles de usar para un servicio web, como AMQP.
Directivas estándar, como por ejemplo, para la limitación
La puerta de enlace de API puede realizar otras funciones transversales como la autenticación