SpringCoud Alibaba Nacos

本文深入探讨Spring Cloud Alibaba Nacos,它集成了Eureka、Config和Bus的功能,作为服务注册中心和配置中心。介绍了Nacos的配置加载顺序、服务发现与健康检查、动态配置管理、以及与Apollo和Spring Cloud Config的对比。此外,文章还讨论了Nacos在Dubbo、K8s等环境中的集成,并提供了Nacos的启动与使用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// TODO 2022-08-04

Dynamic Naming and Configuration Service

Spring Cloud Alibaba Nacos = SpringCloudEureka + SpringCloudConfig(git) +SpringCloudBus(Kafka或RabbitMQ)

Nacos就是:注册中心 + 配置中心的组合

配置文件加载顺序,两方面:文件名,文件类型

重点:

Spring Cloud 组件:重要组件,所承担的角色;列出优缺点,是否维护,为何被替代

远程文件配置以及加载顺序

灰度发布

问题:

实现原理?

为什么快?

配置文件优先级??

配置问题:1.指明了文件拓展类型是否还可以用其他类型文件,如: file-extension: properties,是否下面可以用yml文件?

shared-configs不用下标直接写重复文件会被覆盖还是直接报错?

同时承担:

Nacos:服务注册中心、配置中心

Sentinel:流控、服务降级

Seata:分布式事务

RocketMQ:时间驱动

Dubbo:微服务调用(Java)

可以把Nacos理解为一个中介,连接消费者consumer和生产者provider

// todo 画图

对比和优势:

集成dubbo, 怎么集成的,其他的也能用,有什么区别?dubbo和http的区别?ribbon转发 dubbo openfeign(feign)

集成k8s

@LoadBalanced //ribbon的负载均衡注解-网关的负载均衡 (算法几种?怎么配置?)

常见问题:

https://www.youkuaiyun.com/tags/Mtjagg4sODAzMzktYmxvZwO0O0OO0O0O.html

主流的配置中心:Spring Cloud Config、Apollo(携程)、Nacos(阿里);Apollo支持最完善,性能上nacos>Apollo>Spring Cloud Config.

服务注册发现:Nacos、Eureka、Consult、Zookeeper;从上面的对比可以知道,Nacos作为服务发现中心具备更多的功能支持,且从长远来看Nacos在以后的版本会支持SpringCloud+K8s的组合,填补两者的鸿沟,在两套体系下可以采用同一套服务发现和配置管理的解决方案,这将大大的简化使用和维护成本。

参考:https://www.cnblogs.com/jpymll/p/15843342.html

Nacos使用教程 - 肖德子裕 - 博客园

  1. 注册发现:服务发现与服务健康检查
  2. 配置中心:动态配置管理
  3. 动态DNS服务
  4. 服务和元数据管理

从配置中心角度来看,性能方面Nacos的读写性能最高,Apollo次之,Spring Cloud Confifig依赖Git场景不适合开

放的大规模自动化运维API。功能方面Apollo最为完善,nacos具有Apollo大部分配置管理功能,而Spring Cloud

Confifig不带运维管理界面,需要自行开发。Nacos的一大优势是整合了注册中心、配置中心功能,部署和操作相比

Apollo都要直观简单,因此它简化了架构复杂度,并减轻运维及部署工作。

项目地址:https://github.com/alibaba/nacos/

# 非集群启动,单机启动 # Linux/Unix/Mac 操作系统,执行命令 sh startup.sh -m standalone # Windows 操作系统,执行命令 startup.cmd -m standalone

使用:

<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>

配置文件

代码

nacos config可以读取三种类型的配置文件内容:

  1. 基础配置文件。
  2. 扩展配置文件,可以多个。
  3. 共享配置文件,可以多个。

想读取那个配置文件,均需要手动指定

3、配置文件加载优先级:a < b1 < b2 < c1 < c2 < d1 < d2 < e < f a、application.properties b1、bootstrap.properties b2、bootstrap-{profile}.properties  c1、通过 spring.cloud.nacos.config.shared-configs[1].data-id 支持多个共享 Data Id 的配置 c2、通过 spring.cloud.nacos.config.shared-configs[n].data-id 支持多个共享 Data Id 的配置 d1、通过 spring.cloud.nacos.config.extension-configs[0].data-id 的方式支持多个扩展 Data Id 的配置  d2、通过 spring.cloud.nacos.config.extension-configs[n].data-id  e、通过内部相关规则(应用名、应用名+ Profile )自动生成相关的 Data Id 配置 ,如 scrm-base-service.properties f、VM option

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值