栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【SpringClou项目搭建--服务配置中心SpringCloud Config笔记(八)】

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【SpringClou项目搭建--服务配置中心SpringCloud Config笔记(八)】

目录

文章目录
  • 目录
  • 前言
  • 一、配置中心介绍
    • 1、配置中心是什么
    • 2、配置中心能干什么
    • 3、git整合
  • 二、使用
    • 1、服务端
      • 1.在git上创建一个新仓库
      • 2、模块创建
        • yml文件
        • maven依赖
    • 2、客户端
        • bootstrap.yml
        • yml文件
        • maven依赖


前言

微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能进行,所以一套集中式的、动态的配置管理设施是必不可少的。
官网:https://cloud.spring.io/spring-cloud-static/spring-cloud-config/2.2.1.RELEASE/reference/html/


一、配置中心介绍 1、配置中心是什么

springCloud Config 为微服务架构中的微服务提供集中化的外部配置设施支持,配置服务为各个不同微服务应用的所有环境提供了一个中心的外部配置。

2、配置中心能干什么
  1. 集中管理配置文件
  2. 不同环境不同配置,动态化的配置更新,分环境部署
  3. 运行期间动态调整配置,不再需要在每个服务部署的机器上编写配置文件,服务会向配置中心统一拉取配置自己的信息
  4. 当配置发送变化时,服务不需要重启即可感知到配置的变化并应用新的配置
  5. 将配置信息以REST接口的形式暴露
3、git整合

由于SpringCloud Config默认使用Git来存储配置文件(也有其它方式,比如支持SVN和本地文件),但最推荐的还是Git,而且使用的是http/https访问的形式。

官网:https://cloud.spring.io/spring-cloud-static/spring-cloud-config/2.2.1.RELEASE/reference/html/

二、使用 1、服务端 1.在git上创建一个新仓库

获得git地址:

2、模块创建

cloud-config-center-3344

yml文件
server:
  port: 3344

spring:
  application:
    name:  cloud-config-center #注册进Eureka服务器的微服务名
  cloud:
    config:
      server:
        git:
          #          以下两步均需要在idea的插件中配置gitee
          # 方式1 通过ssh登录
          #          uri: git@github.com:GuoWeiChi/turorial-spring-cloud-config.git #GitHub上面的git仓库名字
          uri: git@github.com:LiuCan99/springcloud-config.gitt #Gitee上面的git仓库名字
          #          ###搜索目录
          search-paths:
            - springcloud-config
          # 方式2 通过账号登录
        #          uri: https://gitee.com/codinginn/turorial-spring-cloud-config.git #GitHub上面的git仓库名字
        #          search-paths:
        #            - turorial-spring-cloud-config
        #          username: yourusername
        #          password: yourpassword

        ####读取分支
        label: master

#服务注册到eureka地址
eureka:
  client:
    service-url:
      defaultZone: http://localhost:7001/eureka

maven依赖


    
        cloud2022
        com.lc.springcloud
        1.0-SNAPSHOT
    
    4.0.0

    cloud-config-center-3344

    

        
        
        
        
        

        
            org.springframework.cloud
            spring-cloud-config-server
            
            
                
                    com.jcraft
                    jsch
                
            
        
        
        
            com.github.mwiede
            jsch
            0.2.0
        

        
            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-client
        

        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-actuator
        

        
            org.springframework.boot
            spring-boot-devtools
            runtime
            true
        

        
            org.projectlombok
            lombok
            true
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        
    



2、客户端 bootstrap.yml
server:
  port: 3355

spring:
  application:
    name: config-clident
  cloud:
    config:
      label: master
      name: config  #配置文件名
      profile: dev  #读取后缀名 以上三个综合:master分支config-dev.yml
      uri:
        - http://localhost:3344

  datasource:
    type: com.alibaba.druid.pool.DruidDataSource    #当前数据源操作类型
    driver-class-name: org.gjt.mm.mysql.Driver      #mysql驱动包
    url: jdbc:mysql://localhost:3306/springcloud?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDateTimeCode=false&serverTimezone=GMT%2B8&useSSL=false
    username: root
    password: root1234

    #rabbitmq相关配置 15672是Web管理界面的端口;5672是MQ访问的端口
  rabbitmq:
    host: localhost
    port: 5672
    username: guest
    password: guest

eureka:
  client:
    service-url:
      defaultZone: http://localhost:7001/eureka


mybatis:
  mapper-locations:
    - classpath:mapper/*.xml
  type-aliases-package: com.lc.cloud.entities      #所有model所在包


#暴露全部监控信息
management:
  endpoints:
    web:
      exposure:
        include: "*"
  endpoint:
    refresh:
      enabled: true

yml文件
server:
  port: 3355

spring:
  application:
    name: config-clident
  cloud:
    config:
      label: master
      name: config  #配置文件名
      profile: dev  #读取后缀名 以上三个综合:master分支config-dev.yml
      uri:
        - http://localhost:3344

  datasource:
    type: com.alibaba.druid.pool.DruidDataSource    #当前数据源操作类型
    driver-class-name: org.gjt.mm.mysql.Driver      #mysql驱动包
    url: jdbc:mysql://localhost:3306/springcloud?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDateTimeCode=false&serverTimezone=GMT%2B8&useSSL=false
    username: root
    password: root1234
    
eureka:
  client:
    service-url:
      defaultZone: http://localhost:7001/eureka


mybatis:
  mapper-locations:
    - classpath:mapper/*.xml
  type-aliases-package: com.lc.cloud.entities      #所有model所在包


#暴露全部监控信息
management:
  endpoints:
    web:
      exposure:
        include: "*"
  endpoint:
    refresh:
      enabled: true

maven依赖


    
        cloud2022
        com.lc.springcloud
        1.0-SNAPSHOT
    
    4.0.0

    cloud-config-center-3355

    
        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-actuator
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
            
                
                    org.junit.vintage
                    junit-vintage-engine
                
            
        



        
        
            org.springframework.cloud
            spring-cloud-starter-config
        

        
            org.springframework.cloud
            spring-cloud-starter-bus-amqp
        

        
        
            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-client
        

        
        
            org.springframework.cloud
            spring-cloud-starter-netflix-hystrix
        

        
        
            com.lc.springcloud
            cloud-api-commons
            ${project.version}
        

        
        
            mysql
            mysql-connector-java
        
        
        
            com.alibaba
            druid
        
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
        
        
        
            junit
            junit
        
        
        
            log4j
            log4j
        
        
        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        
        
        
            org.webjars
            bootstrap
        

        
            org.projectlombok
            lombok
        
        
        
            org.springframework.boot
            spring-boot-starter-actuator
        


    





转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/936590.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号