(九)整合spring cloud云服务架构 - commonservice-config配置服务搭建

1. 介绍

Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持。使用Config Server,您可以在所有环境中管理应用程序的外部属性。客户端和服务器上的概念映射与Spring EnvironmentPropertySource抽象相同,因此它们与Spring应用程序非常契合,但可以与任何以任何语言运行的应用程序一起使用。随着应用程序通过从开发人员到测试和生产的部署流程,您可以管理这些环境之间的配置,并确定应用程序具有迁移时需要运行的一切。服务器存储后端的默认实现使用git,因此它轻松支持标签版本的配置环境,以及可以访问用于管理内容的各种工具。很容易添加替代实现,并使用Spring配置将其插入。

2. 引入pom相关jar包,其中pom.xml配置如下:

<?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. 在src/main/java进行ConfigApplication.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. 在src/main/resource下进行bootstrap.yml配置

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  

注意: 如果不从远程git或者svn库加载配置文件信息,可以配置加载本地地址,比如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  

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

从现在开始,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来,帮助更多有兴趣研发spring cloud框架的朋友,大家来一起探讨spring cloud架构的搭建过程及如何运用于企业项目。

Spring Cloud大型企业分布式微服务云架构源码请加企鹅求求:一七九一七四三三八零

原文地址:https://www.cnblogs.com/sunnysunny/p/10570525.html

时间: 2024-10-10 09:42:34

(九)整合spring cloud云服务架构 - commonservice-config配置服务搭建的相关文章

(四)整合spring cloud云服务架构 - particle-common-framework代码介绍

上一篇我们介绍了spring cloud云服务架构 - particle云架构代码结构,简单的按照几个大的部分去构建代码模块,让我们来回顾一下: 第一部分: 针对于普通服务的基础框架封装(entity.dao.service.controller.api)等 第二部分: spring cloud通用微服务项目,可以监控左右微服务,当然,本身自己也是微服务. 第三部分: 针对于框架内所有组件的封装,可以植入任何的模块项目中. 第四部分: 自身项目的微服务业务,比如:会员模块.消息模块.资金模块.订

(五) 整合spring cloud云服务架构 - 云架构代码结构构建

上一篇介绍了<整合spring cloud云服务架构 - 企业分布式微服务云架构图>,本篇我们根据架构图进行代码的构建.根据微服务化设计思想,结合spring cloud一些优秀的项目,如服务发现.治理.配置化管理.路由负载.安全控制等优秀解决方案,使用Maven技术将框架进行模块化.服务化.原子化封装并构建,也为后期的灰度发布.持续集成提前做好准备工作. 另外在搭建环境之前,大家需要熟练掌握maven的使用及相关问题的处理(这里不再重复介绍). Spring Cloud云架构使用maven来

(三)整合spring cloud云服务架构 - particle云架构代码结构构建

上一篇介绍了spring cloud云服务架构的基本架构图,本篇我们根据架构图进行代码的构建.根据微服务化设计思想,结合spring cloud本身的服务发现.治理.配置化管理.分布式等项目优秀解决方案,我们使用Maven技术将框架进行模块化.服务化.原子化封装,也为后期的热插拔.持续集成做一些准备工作. 另外在搭建环境之前,大家需要熟练掌握maven的使用及相关异常问题的处理. particle云架构使用maven来构建的,使用maven不仅仅是jar包的管控,重要的是要抓住maven的一个核

整合spring cloud云服务架构 - 企业云架构common-service代码结构分析

当前的分布式微服务云架构平台使用Maven构建,所以common-service的通用服务按照maven构建独立的系统服务,结构如下: particle-commonservice: spring cloud 系统服务根项目,所有服务项目的根依赖. particle-commonservice-admin: spring cloud/boot的微服务管理.监控平台(里面会集成很多的组件服务项目) particle-commonservice-apigateway:API网关通用服务项目,所有的请

(一)整合spring cloud云服务架构 - Spring Cloud简介

Spring Cloud是一系列框架的有序集合.利用Spring Boot的开发模式简化了分布式系统基础设施的开发,如服务发现.注册.配置中心.消息总线.负载均衡.断路器.数据监控等(这里只简单的列了一部分),都可以用Spring Boot的开发风格做到一键启动和部署.Spring Cloud将目前比较成熟.经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装,屏蔽掉了复杂的配置和实现原理,最终整合出一套简单易懂.易部署和易维护的分布式系统架构平台. Spring Clou

(一)整合spring cloud云服务架构

Spring Cloud是一系列框架的有序集合.利用Spring Boot的开发模式简化了分布式系统基础设施的开发,都可以用Spring Boot的开发风格做到一键启动和部署.Spring Cloud将目前比较成熟.经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装,屏蔽掉了复杂的配置和实现原理,最终整合出一套简单易懂.易部署和易维护的分布式系统架构平台. Spring Cloud的子项目,大致可分成两类:一类是对现有成熟框架Spring Boot的封装和抽象,也是数量最

整合spring cloud云架构 - commonservice-sso服务搭建(一)

前面几篇我们已经介绍了Spring Cloud和oauth2的知识点,今天我们要利用Spring Cloud和oauth2进行commonservice-sso服务搭建,本节我们只是搭建commonservice-sso的基础平台,闲话少说,直接将步骤记录下来: 1. 创建maven项目commonservice-sso,其中pom.xml文件配置如下: Xml代码   <?xml version="1.0" encoding="UTF-8"?> <

(二)整合spring cloud云服务架构 - particle云架构

第一篇文章简单给大家介绍了Spring Cloud架构,我这边结合了当前大部分企业的通用需求,包括技术的选型比较严格.苛刻,不仅要用业界最流行的技术,还要和国际接轨,在未来的5~10年内不能out.作为公司的架构师,也要有一种放眼世界的眼光,不仅要给公司做好的技术选型,而且还要快速响应企业的业务需求,能够为企业快速定制化业务. 以下是我为公司规划的大型互联网分布式企业微服务云架构: 欢迎大家和我一同来搭建大型互联网分布式企业微服务云架构,我会把搭建架构的详细步骤记录下来,作为以后大家学习参考的资

整合spring cloud云服务架构 - 企业分布式微服务云架构构建

今天正式给大家介绍了Spring Cloud - 企业分布式微服务云架构构建,我这边结合了当前大部分企业的通用需求,包括技术的选型比较严格.苛刻,不仅要用业界最流行的技术,还要和国际接轨,在未来的5~10年内不能out.作为公司的架构师,也要有一种放眼世界的眼光,不仅要给公司做好的技术选型,而且还要快速响应企业的业务需求,能够为企业快速定制化业务. 以下是我为公司规划的大型互联网分布式企业微服务云架构: 从现在开始,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来