Integrated spring cloud cloud services architecture - commonservice-config configuration services to build

  1. Introduction

Provide server and client support Spring Cloud Config configured as an external distributed system. Use Config Server, you can manage an external application properties in all environments. The concept mapping on the client and server with Spring Environment and PropertySource abstract same, so they are very fit and Spring applications, but can be used with any application running in any language. As applications by the developers to test and production deployment process, you can manage the configuration between these environments and to determine the application has everything you need to run the migration. The default storage backend server implementations use git, so it is easy to support label version of the configuration environment, and can access a variety of tools for managing content. Alternatively implemented easily added, and use Spring configuration insert.

  1. Introducing pom related jar package, wherein pom.xml configured as follows:

Xml Code Collection Code

<?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>  
  1. In the src / main / java carried ConfigApplication.java startup configuration file:

Java Code Collection Code

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);  
    }  
}  
  1. Bootstrap.yml be arranged at src / main / resource

Java Code Collection Code

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 profile information from a remote git or svn repository can be configured to load a local address, such as configuration using the following window:

Java Code Collection Code


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: f`alse  

``

 到此,整个config服务项目配置完毕!!

从现在开始,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来,帮助更多有兴趣研发spring cloud框架的朋友,有spring cloud b2b2c电子商务需求的朋友可以加企鹅求求:三五三六二四七二五九,大家来一起探讨spring cloud架构的搭建过程及如何运用于企业项目。`

Guess you like

Origin blog.51cto.com/14622290/2454227