Red de conocimiento informático - Conocimiento del nombre de dominio - Primera experiencia con microservicios (2): uso de Nacos como centro de configuración e integración de Dubbo

Primera experiencia con microservicios (2): uso de Nacos como centro de configuración e integración de Dubbo

Primero inicie Nacos, siga los pasos del artículo anterior para iniciar el servicio y proyecto de Nacos y visite la página web de Nacos. Asegúrese de que los servicios del proyecto estén registrados en el registro. Agregue bootstrap.yml en el mismo directorio que application.yml. En el proyecto Spring Boot, bootstrap.yml se inicializará antes que application.yml, por lo que debemos introducir el archivo de configuración oficial de Nacos (artículo anterior) en bootstrap.yml. Hemos escrito application.yml con Nacos como centro de configuración, ahora solo necesitamos recortarlo de application.yml donde spring:application:name se usará como ID de datos para la nueva configuración en Nacos. ), y luego agregue el grupo de atributos para las pruebas grupales, como se muestra a continuación

Luego abra la página web del servicio Nacos, abra Gestión de configuración -> Lista de configuración y haga clic en el botón Agregar a la derecha para agregar él.

ID de datos: el nombre correspondiente a spring:application:name en el archivo de configuración bootstrap.yml

Grupo: especifique el grupo (para facilitar la gestión de configuraciones de proyectos en diferentes entornos; , porque es para prueba, así que complete el archivo de configuración y el grupo correspondiente a lo anterior)

Grupo: especifique el grupo (para facilitar la gestión de la configuración del proyecto en diferentes entornos, porque el autor aquí es una prueba, así que complete el grupo El archivo de configuración correspondiente y el contenido anterior). Grupo: especifique el grupo (para facilitar la gestión de la configuración del proyecto en diferentes entornos, porque el autor aquí es una prueba, así que complete la prueba y el contenido anterior correspondiente al grupo en el archivo de configuración);

Descripción: Descripción de la configuración;

Formato de configuración: el formato del archivo de configuración debe ser coherente con el formato de sufijo del ID de datos (aquí estoy usando yml, así que elija yaml a continuación. Tenga en cuenta que también puede seleccionar la ubicación del atributo, pero debe ser coherente con el archivo bootstrap .yml);

Contenido de configuración: contenido de configuración específico (aquí copio todas las configuraciones en el proyecto application.yml); p>

Al probar para iniciar el servicio al consumidor, cuando application.yml está vacío, el puerto de inicio del proyecto todavía está configurado como Nacos 9011, lo que indica que el éxito del proyecto depende del centro de configuración de Nacos. También pueden seguir otros servicios. el mismo método:

Agregue un nuevo controlador de prueba y luego agregue la anotación @RefreshScope para indicar que los datos de configuración en el controlador se actualizan automáticamente.

Edite el archivo de configuración del consumidor de Nacos, agregue un nuevo tipo de parámetro: prueba, acceda al controlador y devuelva prueba. Los resultados son los siguientes:

Dado que Dubbo es una dependencia común para todos los servicios, introdúzcalo en cloud-common. Puede ir a mvnrepository para buscar la versión correspondiente para su proyecto.

Después de introducir las dependencias, debe escribir el archivo de configuración para el servicio al consumidor. Después de importar las dependencias, debe escribir el archivo de configuración del servicio al consumidor para registrar el servicio Dubbo en Nacos y agregar el siguiente contenido, donde servicios suscritos se refiere al servicio productor, prot:-1 se refiere a la aleatorización de puertos, registro: dirección: se refiere al registro correspondiente a Dubbo, que debe configurarse en Nacos

A continuación, agregue el servicio de interfaz. Agregue un nuevo servicio de interfaz, el tipo de proyecto es proyecto Maven y agregue una nueva interfaz en el proyecto.

E introducir módulos en los archivos pom.xml tanto de los proveedores de la nube (productores) como de los consumidores de la nube (consumidores)

Implementar los métodos correspondientes de la interfaz en los servicios reales del productor

Introduzca el Servicio en el Controlador del consumidor del servicio y agregue la anotación @Reference en el Servicio. Tenga cuidado de seleccionar el que tiene Dubbo al introducir el paquete jar y no utilice el Jdk nativo.

En. el servicio al consumidor Escriba y pruebe la interfaz llamada por Dubbo. Los resultados de la prueba son los siguientes: