SpringCloudAlibaba搭建过程踩坑记录

kyaa111 2年前 ⋅ 613 阅读

Nacos

  1. 如果使用docker部署Nacos, 则需要设置容器环境变量NACOS_AUTH_ENABLE=true, 才能使nacos开启连接密码认证

spring:
  profiles:
    active: @profileActive@
  application:
    name: wx-api
  cloud:
    nacos:
      discovery:
        server-addr: @nacos-host@
      username: @nacos-username@
      password: @nacos-password@
      
  1. 如果使用Nacos做配置中心, 默认加载${spring.application.name}为dataId的配置, 若需要多项目共享配置文件, 需要如下配置
spring:
  profiles:
    active: @profileActive@
  application:
    name: basic-rest
  cloud:
    nacos:
      discovery:
        server-addr: @nacos-host@
      config:
        group: PROJECT_GROUP
        server-addr: @nacos-host@
        file-extension: yml
        extension-configs:
          - data-id: test-config.yml
            group: EXTENSION_GROUP
            refresh: true
          - data-id: user-config.yml
            group: EXTENSION_GROUP
            refresh: true

Sentinel

Sentinel是双向通信的, 微服务可以注册到Sentinel, 但Sentinel也会向微服务发起请求, 获取相关数据, 所以需要注意, 两者间是否能相互发生通信, Sentinel也提供了spring.cloud.sentinel.transport.client-ip这个配置, 一定程度可以避免sentinel无法调用微服务接口的情况