- Introducción
Spring Cloud Config proporciona soporte de servidor y cliente para la configuración externa en sistemas distribuidos. Con Config Server, puede administrar las propiedades externas de la aplicación en todos los entornos. El mapeo conceptual en el cliente y el servidor es el mismo que las abstracciones Spring Environment y PropertySource, por lo que encajan bien con las aplicaciones Spring, pero se pueden usar con cualquier aplicación que se ejecute en cualquier idioma. A medida que la aplicación pasa por el proceso de implementación desde el desarrollador hasta la prueba y la producción, puede administrar la configuración entre estos entornos y asegurarse de que la aplicación tenga todo lo que necesita para ejecutarse cuando se migra. La implementación predeterminada del backend de almacenamiento del servidor usa git, por lo que admite fácilmente el entorno de configuración de la versión de la etiqueta y puede acceder a varias herramientas para administrar el contenido. Es fácil agregar implementaciones alternativas y conectarlas usando la configuración Spring. (Se puede agregar el código fuente de la arquitectura empresarial: tres, cinco, tres, dos, cuatro, siete, dos, Wu Jiu)
-
Introduzca paquetes jar relacionados con pom, donde pom.xml se configura de la siguiente manera:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.ml.honghu</groupId> <artifactId>commonservice</artifactId> <version>0.0.1-SNAPSHOT</version> </parent> <artifactId>commonservice-config</artifactId> <packaging>jar</packaging> <name>commonservice-config</name> <description>Config Server</description> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <id>1</id> <goals> <goal>repackage</goal> </goals> </execution> <execution> <id>2</id> <goals> <goal>build-info</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
- Configure el archivo de inicio ConfigApplication.java en src / main / java:
package com.ml.honghu;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
@EnableConfigServer
@EnableEurekaClient
@SpringBootApplication
public class ConfigApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigApplication.class, args);
}
}
- Configure bootstrap.yml en src / main / resource
server:
port: 8888
spring:
application:
name: commonservice-config-server
profiles:
active: discovery,native
cloud:
config:
server:
git:
uri: http://192.168.0.254/honghu.../honghu-config.git
username: honghu
password: 123456
searchPaths: config-dev
security:
basic:
enabled: true
user:
name: honghu
password: 123456
eureka:
client:
serviceUrl:
defaultZone: http://honghu:123456@localhost:8761/eureka/
honghuZone: http://honghu:123456@localhost:8761/eureka/
registry-fetch-interval-seconds: 300
availability-zones:
honghu: honghuZone
instance:
prefer-ip-address: true
metadataMap:
version: 1.0
variant: A
user: ${security.user.name}
password: ${security.user.password}
management:
security:
enabled: false
Nota: Si no carga la información del archivo de configuración desde la biblioteca git o svn remota, puede configurar para cargar la dirección local, como la configuración en la ventana:
server:
port: 8888
spring:
application:
name: commonservice-config-server
profiles:
active: discovery,native
cloud:
config:
server:
<span style="color: #ff0000;">native.searchLocations: d:/honghu-config</span>
security:
basic:
enabled: true
user:
name: honghu
password: 123456
eureka:
client:
serviceUrl:
defaultZone: http://honghu:123456@localhost:8761/eureka/
honghuZone: http://honghu:123456@localhost:8761/eureka/
registry-fetch-interval-seconds: 300
availability-zones:
honghu: honghuZone
instance:
prefer-ip-address: true
metadataMap:
version: 1.0
variant: A
user: ${security.user.name}
password: ${security.user.password}
management:
security:
enabled: false
En este punto, ¡todo el proyecto de servicio de configuración está configurado! !
A partir de ahora, registraré el proceso de construcción y la esencia de la arquitectura de nube de microservicio de Spring Cloud recientemente desarrollada para ayudar a más amigos que estén interesados en desarrollar el marco de Spring Cloud. Utilizado en proyectos corporativos.