SpringCloudAlibaba Nacos配置中心与服务发现

目录

1.配置

1.1配置的特点

只读

伴随应用的整个生命周期

多种加载方式

配置需要治理

1.2配置中心

2.Nacos简介

2.1特性

服务发现与服务健康检查

动态配置管理

动态DNS服务

服务和元数据管理

3.服务发现


1.配置

应用程序在启动和运行的时候往往需要读取一些配置信息,配置基本上伴随着应用程序的整个生命周期,比如:数据库连接参数、启动参数等。

1.1配置的特点

只读

对于程序员是只读的,程序通过读取配置来改变自己的行为,但是程序不应该去改变配置

伴随应用的整个生命周期

在启动时通过读取配置来初始化,在运行时根据配置调整行为。例如启动时需要读取服务的端口号、系统在运行过程中需要读取定制策略执行定时任务。

多种加载方式

常见的有程序内部的hard code,配置文件,环境变量,启动参数,基于数据库等。

配置需要治理

同一份程序在不同的环境(开发、测试、生产),不同的集群(如不同的数据中心)京城需要有不同的配置,所以需要有完善的环境,集群配置管理。

1.2配置中心

在微服务架构中,当系统从一个单体应用拆分成分布式系统上一个个服务节点后,配置文件必须跟着迁移(分隔),这样配置就分散。

配置中心将配置从各个应用中分离出来,对配置进行统一管理,应用自身不需要自己去配置管理。

2.Nacos简介

阿里的开源产品,针对微服务架构中的服务发现、配置管理、服务治理的总和型解决方案。

官网:https://nocas.io/

2.1特性

四大功能

服务发现与服务健康检查

nacos使服务更容易注册,并通过DNS或HTTP接口发现其他服务,Nacos还提供服务的实时检查,防止向不健康的主机或服务实例发送请求。

动态配置管理

动态配置服务允许您在所有环境中以集中和动态的方式管理所有服务的配置。Nacos消除了在更新配置时重新部署应用程序,这使配置的更改更加高效和灵活。

自动定义扩展的Data Id配置 ,内部配置优先级最高,配置优先级:扩展的Data Id中 n 越大优先级越大。bootstrap.yml的加载顺序优先于application.yml。

完全关闭配置:通过设置spring.cloud.nacos.config.enable=false来完全关闭Spring Cloud Nacos Config。

nacos可以集群部署。

@Value注解是Spring框架提供的注解,用于获取配置文件中的值,可以用于获取任意配置文件(如application.properties、application.yml)中的配置项。使用@Value注解时,需要指定配置项的完整路径,例如:@Value("${config.key}")。

nacos启动命令(Windows):startup.cmd -m standalone

打开浏览器输入 http://localhost:8848/nacos,即可访问服务, 默认账号密码是nacos、nacos

动态DNS服务

Nacos提供基于DNS 协议的服务发现能力,旨在支持异构语言的服务发现,支持将注册在Nacos上的服务以域名的方式暴露端点,,让三方应用方便的查阅及发现。

服务和元数据管理

Nacos能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略。

3.服务发现

微服务架构中,整个系统会按职责能力划分为多个服务,通过服务之间协作来实现业务目标。这样在我们的代码中就需要进行服务间的远程调用,服务的消费方要调用服务的生产方,为了完成一次请求,消费方需要知道服务生产方的网络位置(IP地址和端口号)。

·

相关推荐
知识即是力量ol6 天前
微服务架构:从入门到进阶完全指南
java·spring cloud·微服务·nacos·架构·gateway·feign
码农阿豪7 天前
Nacos 日志与 Raft 数据清理指南:如何安全释放磁盘空间
java·安全·nacos
学习是生活的调味剂12 天前
nacos原理之服务注册浅析
java·开发语言·nacos·注册中心
金刚猿15 天前
03_虚拟机中间件部署_Nacos 部署单机模式、配置鉴权
linux·中间件·nacos·配置鉴权
利刃大大16 天前
【SpringCloud】Nacos简介 && 安装 && 快速入手 && 负载均衡
spring·spring cloud·微服务·nacos·负载均衡
没有bug.的程序员22 天前
服务注册与发现:Consul vs. Nacos 的选型博弈、内核拆解与混合云实战指南
java·spring boot·spring·nacos·consul·服务注册于发现·内核拆解
CodeCaptain24 天前
nacos-2.3.2-OEM与nacos3.1.x的差异分析
java·经验分享·nacos·springcloud
斯普信专业组1 个月前
Nacos-MCP 融合架构:运维nacos的MCP服务项目
运维·nacos·架构
魔芋红茶1 个月前
NACOS 二次开发指南
nacos
没有bug.的程序员1 个月前
Spring Cloud Alibaba:Nacos 配置中心与服务发现的工业级深度实战
java·spring boot·nacos·服务发现·springcloud·配置中心·alibaba