Ir al contenido principal

Disponibilidad: External Configuration Store pattern

External Configuration Store pattern



Problema



Tenemos una aplicación  Este servicio se comunica con
 - Un servicio de cache
 - Un storage
 - Una cola
 - Una Base de datos
 - Un CDN* (Content Delivery Network)

Esto genera tener muchas configuraciones: Cadenas de conexión, tamaño maxima de archivos, numero de reintentos,etc.

Cuando se hagan despliegues de varias va a existir las configuraciones repetivas y si hay una más de una aplicación que necesita configurarse, va a necesitar abrir cada aplicación para configurarla (múltiples metodos: txt, web.config, etc). y puede necesitar reiniciar la aplicación (Perdida de confianza).

Solución



Tenemos una Aplicación A y una Aplicación B, donde la aplicación B, donde B es una aplicación de configuraciones, donde se va a solicitar la configuración (contraseña, cadena de conexión), B conoce la configuración pertinente de cada servicio.

Si se necesita reiniciar o recompilar, se recompila una única aplicación.

En Azure: Key Vault, App Configuration.


Consideraciones:

- Debe estar 100% up, si es un servicio en azure no nos preocupamos.
- Flexible (JSON, XML. Database)
- Mayor seguridad, por qué esta toda la información de acceso.


Cuando?
- Cuando compartimos configuración en múltiples aplicaciones
- Sistemas de configuración no soportan configuraciones necesarias.
- Nuestras configuraciones cambian a menudo
- Necesitamos monitorear el uso de las configuraciones.




Referencias:






Comentarios

Publicar un comentario

Entradas más populares de este blog

Antipatrones Microservicios

1. Migración de Manejo de Datos Antipatron. El antipatrón de migración basado en datos se produce principalmente cuando se migra de una aplicación monolítica a una arquitectura de microservicios. La razón por la que esto es un antipatrón es que al principio parece una buena idea migrar la funcionalidad del servicio y los datos correspondientes al crear microservicios, pero como aprenderá en este capítulo, esto lo llevará por un mal camino que puede resultar en alto riesgo, exceso de costo y esfuerzo de migración adicional. Comprender los riesgos relacionados con la migración de datos y la importancia de "datos sobre funcionalidad" es el primer paso para evitar este antipatrón. La técnica para evitar este antipraton consiste en realizar primero una migración de la funcionalidad, es decir, primero refactorizar el código fuente, pasando por primero modularizar el contexto o dominio y continuar con la definición y construcción de servicios, a medida que se conoce el código que se...

Microservice Architecture | Arquitectura de microservicios

Qué es  Arquitectura de microservicios ?   El estilo arquitectónico de microservicios es un enfoque para desarrollar una sola aplicación como un conjunto de pequeños servicios, cada uno de los cuales se ejecuta en su propio proceso y se comunica con mecanismos ligeros, a menudo una API de recursos HTTP. El hecho de que los  servicios son implementables y escalables de manera independiente, cada servicio también permite que se escriban diferentes servicios en diferentes lenguajes de programación. También pueden ser gestionados por diferentes equipos. Las aplicaciones creadas a partir de microservicios pretenden ser lo más desacopladas y cohesivas posible: poseen su propia lógica de dominio y actúan más como ltros en el sentido clásico de que reciben una solicitud, aplican la lógica según corresponda y producen una respuesta. Un servicio es una funcionalidad que se expone para su uso por otros procesos .  Que otros protocolos puedo us...

Referencia | Material de Apoyo

Arquitectura .NET Architecture Guides Architectural Patterns: Uncover essential patterns in the most indispensable Domain Driven Design Quickly Microservicios Practical Microservices: By Umesh Ram Sharma Building Microservices: Designing Fine-Grained Systems By Sam Newman SOA Design Patterns By Thomas Erl