Configuración Nacos de múltiples archivos de carga y configuración de uso compartido

Prólogo

Pensando en un problema, nos encontraremos con tal escenario en el desarrollo real. Dividimos la aplicación en múltiples archivos de configuración, entonces, ¿cómo maneja Nacos múltiples archivos de configuración?

Cargar múltiples configuraciones

Ya sabemos que la correspondencia entre la aplicación Spring y el contenido de configuración en Nacos está controlada por los siguientes tres parámetros:

  • spring.cloud.nacos.config.prefix
  • spring.cloud.nacos.config.file-extension
  • spring.cloud.nacos.config.group

Por defecto, la forma en que usamos: Data ID=${spring.application.name}.properties Group=DEFAULT_GROUPconfiguración.
Por ejemplo: ahora hay una demanda: queremos hacer una gestión de configuración unificada para todos los módulos Actuator y la salida de registro aplicados.
La forma más sencilla de implementar es aplicar la configuración relevante Actuator.properties y log log.properties. Dividimos estos dos tipos de configuración, ahora tiene que compartir el
primer paso:
crear en Nacos en Data ID=actuator.properties, Group=DEFAULT_GROUPy Data ID=log.properties, Group=DEFAULT_GROUPla configuración del contenido.
Archivo de configuraciónPaso 2:
configure los dos contenidos de configuración que se cargarán en la aplicación Spring Cloud mediante el uso de parámetros spring.cloud.nacos.config.ext-config, como:

spring.cloud.nacos.config.ext-config[0].data-id=actuator.properties
spring.cloud.nacos.config.ext-config[0].group=DEFAULT_GROUP
spring.cloud.nacos.config.ext-config[0].refresh=true
spring.cloud.nacos.config.ext-config[1].data-id=log.properties
spring.cloud.nacos.config.ext-config[1].group=DEFAULT_GROUP
spring.cloud.nacos.config.ext-config[1].refresh=true

Como puede ver:
spring.cloud.nacos.config.ext-config :Set es un tipo de lista de matriz. Cada configuración incluye tres parámetros: data-id, group, refresh
refresh: Este parámetro controla si el contenido del archivo de configuración de soporte de actualización automática, de forma predeterminada, sólo la configuración por defecto se cargan automáticamente de actualización, para la configuración para cargar el contenido de estas extensiones tienen que configurar los ajustes Solo entonces se logrará la actualización automática.

Configuración compartida

De hecho, el archivo de configuración ya se puede compartir a través del método anterior de cargar la colección. Nacos también proporciona otro método de configuración conveniente

spring.cloud.nacos.config.shared-dataids=actuator.properties,log.properties
spring.cloud.nacos.config.refreshable-dataids=actuator.properties,log.properties

spring.cloud.nacos.config.shared-dataids:Los parámetros se usan para configurar múltiples configuraciones compartidas Data Id. Cuando se usan múltiples, se separan por comas
spring.cloud.nacos.config.refreshable-dataids: Los parámetros se usan para definir qué Data IdID de datos de configuración compartida se pueden actualizar dinámicamente en la aplicación cuando la configuración cambia. . Si no hay una configuración explícita, de forma predeterminada, todas las configuraciones compartidas no admiten la actualización dinámica

Configurar prioridad de carga

Cuando cargamos varias configuraciones, si existe la misma clave, debemos comprender la relación de prioridad de la carga de la configuración.
Cuando se usa la configuración de Nacos, hay tres tipos principales de configuración:

  • A través de la spring.cloud.nacos.config.shared-dataidsconfiguración de uso compartido definida
  • A través de la spring.cloud.nacos.config.ext-config[n]configuración de carga definida
  • Según las reglas internas ( spring.cloud.nacos.config.prefix, spring.cloud.nacos.config.file-extension, spring.cloud.nacos.config.groupempalme de estos parámetros) Configuración

Para determinar el orden de carga de estas configuraciones, agregamos estas configuraciones a la aplicación y observamos los registros

spring.cloud.nacos.config.ext-config[0].data-id=actuator.properties
spring.cloud.nacos.config.ext-config[0].group=DEFAULT_GROUP
spring.cloud.nacos.config.ext-config[0].refresh=true

spring.cloud.nacos.config.shared-dataids=log.properties
spring.cloud.nacos.config.refreshable-dataids=log.properties

Cargando ordenPodemos ver el orden de carga a través del registro: A <B <C

Referencias

Documentación oficial de Nacos Tutorial de documentación de
Nacos

8 artículos originales publicados · Me gusta0 · Visitas 45

Supongo que te gusta

Origin blog.csdn.net/weixin_41213402/article/details/105412987
Recomendado
Clasificación