美文网首页cloud服务监控和治理
分布式组件-nacos-项目集成

分布式组件-nacos-项目集成

作者: 乙腾 | 来源:发表于2021-02-10 09:11 被阅读0次

为了使用nacos注册中心,需要在本地配置其客户端

依赖pom

<!-- Spring Cloud Alibaba -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

如果需要使用nacos统一配置管理

<!--        配置中心来做配置管理-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

配置

本地配置

spring:
  application:
    # 服务名
    name: service-provider
  cloud:
    nacos:
      discovery:
        # 服务注册中心
        server-addr: xx.xx.xxx.xxx:8848

外置配置

spring.profiles.active=dev
spring.application.name=gulimail-cart
spring.cloud.nacos.config.server-addr=xxx.xxx.xxx.xxx:8848
spring.cloud.nacos.config.file-extension=yaml
spring.cloud.nacos.config.group=gulimail_cart_group
spring.cloud.nacos.config.namespace=e4d29ef9-21f5-4882-ab3a-e6257e0207fe

notice

n1.SprinCloud读取配置文件顺序(优先顺序从左到右)

bootstrap.properties>bootstrap.yml>application.properties>application.yml

n2.配置说明

#环境
spring.profiles.active=dev
#Data ID 表示系统配置集  服务注册在nacos中的应用名
spring.application.name=gulimail-cart
#nacos server 地址
spring.cloud.nacos.config.server-addr=192.168.16.129:8848
#扩展名
spring.cloud.nacos.config.file-extension=yaml
#配置所属分组
spring.cloud.nacos.config.group=gulimail_cart_group
#所属命名空间
spring.cloud.nacos.config.namespace=e4d29ef9-21f5-4882-ab3a-e6257e0207fe

Spring Cloud Alibaba Nacos Config 从Nacos Config Server中加载配置时,会先从配置中匹配该应用的Data ID,在Spring Cloud Nacos实现中,DataId的默认规则是:

image.png

结合这个规则,那么如上配置的DataID = gulimail-cart-dev.yaml,通过这个Data ID去Nacos Config Server的配置列表中匹配。

如下图:


image.png

Nacos Server 中的配置,其Data ID 一定要和配置文件中组装的Data ID 匹配。

n3.默认配置文件是properties

如果spring.cloud.nacos.config.file-extension这一些不填,则默认补上properties,去加在这个Data ID。

n4.自定义Namspace和Group

image.png

官方推荐,Namespace用来区分不同环境,Group用来区分不同业务。

启动客户端

@EnableDiscoveryClient
@SpringBootApplication
public class GulimailCartApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimailCartApplication.class, args);
    }

}

相关文章

网友评论

    本文标题:分布式组件-nacos-项目集成

    本文链接:https://www.haomeiwen.com/subject/egbhxltx.html