1 Introduction
Spring Cloud Config provides server and client support for external configuration in distributed systems. With Config Server, you can manage your application's external properties in all environments. Concept mapping on client and server is the same as Spring Environment and PropertySource abstraction,
So they work well with Spring applications, but can be used with any application running in any language. As the application moves through the deployment process from developer to test and production, you can manage the configuration between these environments and be sure that the application has everything it needs to run when it migrates. The default implementation of the server storage backend uses git, so it easily supports a tagged version of the configuration environment, as well as having access to various tools for managing content. It's easy to add alternative implementations and plug them in using Spring configuration.
2. Introduce the pom related jar package, where the pom.xml configuration is as follows:
<?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>
3. Configure the ConfigApplication.java startup file in 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);
}
4. Configure bootstrap.yml under 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
Note: If you do not load the configuration file information from the remote git or svn repository, you can configure the local address to load, such as the configuration under window:
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
At this point, the entire config service project is configured! !
From now on, I will record the construction process and essence of the recently developed spring cloud microservice cloud architecture to help more friends who are interested in developing the spring cloud framework. Let’s discuss the construction process and how of the spring cloud architecture together. Used in enterprise projects. Enterprise distributed microservice cloud architecture technology Spring Cloud+Spring Boot+Mybatis+shiro+RestFul+ microservice source code sharing, technical support 1791743380