Introducción a la configuración de Spring Cloud, arquitectura

Directorio

Problemas de configuración que enfrentan los sistemas distribuidos

Introducción a Spring Cloud Config

Usos

Arquitectura de configuración


Problemas de configuración que enfrentan los sistemas distribuidos

Microservicios significa que el negocio en una aplicación monolítica debe dividirse en servicios individuales. La granularidad de cada servicio es relativamente pequeña, por lo que aparecerá una gran cantidad de servicios en el sistema. Dado que cada servicio requiere la información de configuración necesaria para ejecutarse, es esencial una instalación de administración de configuración dinámica y centralizada. SpringCloud proporciona ConfigServer para resolver este problema. Cada uno de nuestros microservicios viene con un application.yml, que es administrado por cientos de archivos de configuración.

Introducción a Spring Cloud Config

SpringCloud Config proporciona soporte de configuración externa centralizada para microservicios en la arquitectura de microservicios.El servidor de configuración proporciona una configuración externa centralizada para todos los entornos de diferentes aplicaciones de microservicios.

SpringCloud Config se divide en servidor y cliente.

El servidor también se conoce como un centro de configuración distribuido. Es una aplicación de microservicio independiente que se utiliza para conectarse al servidor de configuración y proporcionar interfaces de acceso para que los clientes obtengan información de configuración y cifren / descifren información.

El cliente administra los recursos de la aplicación y el contenido de configuración relacionado con la empresa a través de un centro de configuración designado, y obtiene y carga la información de configuración del centro de configuración al inicio.

El servidor de configuración usa git para almacenar información de configuración de forma predeterminada, lo que es útil para la gestión de versiones de la configuración del entorno, y puede administrar y acceder fácilmente al contenido de configuración a través de la herramienta de cliente git.

Usos

Administrar de forma centralizada los archivos de configuración.

Diferentes configuraciones para diferentes entornos, actualizaciones de configuración dinámica, despliegue de subambiente como dev / test / prod / beta / release.

Ajuste dinámicamente la configuración durante la operación. Ya no es necesario escribir archivos de configuración en la máquina donde se implementa cada servicio, y el servicio se enviará al centro de configuración.

Extraiga y configure de manera unificada su propia información.

Cuando la configuración cambia, el servicio puede detectar el cambio de configuración y aplicar la nueva configuración sin reiniciar.

Exponer información de configuración en forma de interfaz REST.
 

Arquitectura de configuración

springCloudConfig se divide en un servidor y un cliente. El servidor es responsable de publicar los archivos de configuración almacenados en el local, git o svn en una interfaz de estilo REST. El cliente puede obtener la configuración desde la interfaz REST del lado del servidor. Sin embargo, el cliente no puede detectar activamente el cambio de configuración para obtener activamente la nueva configuración, lo que requiere que cada cliente active su propia interfaz / actualización a través del método POST. Y el SpringCloudBus que mencionamos anteriormente ha jugado su papel

SpringCloudBus conecta los nodos de un sistema distribuido (un poco como una cola de mensajes) a través de un agente de mensajes ligero. Esto se puede usar para transmitir cambios de estado (como cambios de configuración) u otras instrucciones de administración. SpringCloudBus proporciona punto final / bus / actualización a la que se accede a través del método de publicación (el arranque de Spring tiene muchos puntos finales monitoreados, como / health). Esta interfaz generalmente es llamada por la función git hook (activador de escucha) para notificar a cada cliente SpringCloudConfig El servidor actualiza la configuración .
 

El servidor git extraerá el archivo de configuración del git remoto y lo almacenará en la biblioteca local de archivos git. Cuando el git remoto no esté disponible, extraerá la información de configuración de la biblioteca local de archivos git

El siguiente es un diagrama de flujo de trabajo de Spring Cloud Config combinado con bus

La segunda es la relación de prioridad al acceder al archivo de configuración. Consulte la siguiente figura (los datos que probé yo mismo, accedidos directamente desde el servidor)

La prioridad configurada es de arriba a abajo, con la más alta

 

 

 

 


 

524 artículos originales publicados · Me gusta 80 · Visitas 150,000+

Supongo que te gusta

Origin blog.csdn.net/xushiyu1996818/article/details/104559695
Recomendado
Clasificación