El tutorial de Dubbo fácil de entender (3): orden de carga de propiedades y verificación al inicio

Prólogo

Este artículo presentará dos funciones importantes de Dubbo: secuencia de carga de atributos y verificación de inicio.

Orden de carga de propiedad

Estrategia de cobertura

¿Cómo lee Dubbo la configuración durante la fase de inicio de la aplicación? Por ejemplo, sabemos que Dubbo admite múltiples niveles de configuración y alcanzará automáticamente la cobertura entre las configuraciones de acuerdo con la prioridad predeterminada. Luego, si configuramos Dubbo a través de los parámetros de la máquina virtual, también lo configuramos a través del archivo de configuración local dubbo.properties , ¿Qué configuración se preferirá primero? Este es un problema que debe resolverse el orden de carga de atributos de Dubbo.

Dubbo admite cuatro fuentes de configuración, de la siguiente manera:

  1. Modo de configuración de parámetros de máquina virtual JVM, configurado por parámetro -D
  2. Configuración a través de dubbo.xml (equivalente a application.properties/application.yml en Spring Boot), es decir, configuración externa
  3. Configure en consecuencia a través de la interfaz de programación
  4. Configuración a través del archivo de configuración local dubbo.properties

La figura del documento oficial de Dubbo también muestra la prioridad de estas cuatro fuentes de configuración: de arriba a abajo, la prioridad se reduce en orden.
Inserte la descripción de la imagen aquí

Resumen

Si se pasan los parámetros de la máquina virtual JVM, los parámetros de la máquina virtual tienen prioridad, de lo contrario el archivo dubbo.xml personalizado tiene prioridad. Si dubbo.xml no define atributos relacionados, la interfaz de programación tiene prioridad. Finalmente, si ninguno de los anteriores La definición correspondiente está sujeta al archivo de configuración local dubbo.properties.

Método de configuración
  1. Podemos configurar la configuración pública, como el nombre de la aplicación, la dirección del centro de registro y similares. Configurado en el archivo de configuración local dubbo.properties
  2. Las configuraciones que requerirán cambios adicionales se configuran en el archivo de configuración dubbo.xml personalizado
  3. La configuración que debe cambiarse temporalmente se configura pasando parámetros de máquina virtual JVM al inicio

Verificar al inicio

¿Qué es un cheque al inicio?

Dubbo verificará si el servicio dependiente está disponible cuando se inicia, si no está disponible, lanzará una excepción, por lo que la verificación de inicio predeterminada se establece en verdadero.

También podemos desactivar la verificación configurando la verificación al inicio en falso. Los escenarios aplicables son aquellos que no se preocupan por ciertos servicios, y el escenario donde las dependencias circulares requieren que uno comience primero.

Además, si el contenedor Spring tiene una carga lenta, o el servicio de referencia se retrasa a través de la programación API, apague el cheque, de lo contrario el servicio no estará disponible temporalmente, arrojará una excepción y obtendrá una referencia nula, si el cheque es falso al inicio, siempre devolverá la referencia , Cuando se restaura el servicio, se puede conectar automáticamente.

Prueba

Solo comenzamos el consumidor, no el proveedor. Dado que la verificación predeterminada es verdadera al inicio, el consumidor encontrará que el servicio dependiente no está disponible cuando se inicia, y arrojará una excepción. La prueba es la siguiente:
Inserte la descripción de la imagen aquí
configuramos la comprobación de inicio en falso y agregamos la siguiente configuración en el archivo de configuración:

#关闭所有服务的启动时检查
dubbo.consumer.check=false

Luego reiniciamos al consumidor y descubrimos que esta vez no se produjo ninguna excepción al inicio.

Inserte la descripción de la imagen aquí
Luego, llamamos de forma remota al método proporcionado por el proveedor y encontramos que se produce una excepción cuando se llama.
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Además de desactivar la comprobación de inicio de todos los servicios, también podemos desactivar la comprobación de inicio del registro y la comprobación de inicio de un determinado servicio. Para la configuración específica, consulte la documentación oficial.

151 artículos originales publicados · 317 elogiados · 40,000+ vistas

Supongo que te gusta

Origin blog.csdn.net/Geffin/article/details/105666475
Recomendado
Clasificación