前端转后端入门实践日志2-nacos

已完成分析,共参考 12 篇资料

Nacos 可以理解为微服务架构里的 "服务注册中心 + 配置中心 + 服务管理平台"。

在 Spring Boot 多项目里,它主要解决两件事:服务之间怎么互相找到,以及配置怎么统一管理、动态刷新。

能力 作用 实际场景
服务注册与发现 服务启动后把自己的地址注册到 Nacos,调用方从 Nacos 拉取可用实例 订单服务调用用户服务时,不用写死 IP 和端口
配置中心 把数据库地址、开关、超时时间等配置集中管理 修改某个参数后推送给所有服务,不用逐个重启
健康检查 自动判断服务实例是否存活 某个服务挂了,流量不再转发到它
命名空间 / 分组 按环境、业务线隔离配置和服务 dev、test、prod 环境互不影响
服务治理 支持权重、元数据、灰度发布等 新版本服务先接少量流量,再全量发布

上面的解释好官方啊,

我的理解

把写在application.yml里的配置,统一让nacos管理

获取nacos-server-2.1.2软件

可以直接拷贝同事的,

Nacos Server 本质上就是一个 Java 服务。

它底层是 Spring Boot 应用,入口是 com.alibaba.nacos.Nacos 的 main 方法,内嵌 Web 容器,启动后会监听端口,提供注册中心、配置中心和控制台能力。

启动

nacos-server-2.1.2\nacos\bin\startup.cmd 点击启动

配置

浏览器直接打开 http://localhost:8848/nacos/#/

账号/密码 nacos/nacos

设置命名空间

注意这个命名空间,不是随便填写的, 去代码里找application.yml 里

这个配置 , 要和这个同名, 多个项目可以统一在这里配置,

导入配置

这里导入同事们的配置,

里面有什么东西

其实就是application.yaml里对应的配置

优先级

默认情况下:Nacos 远程配置优先级高于本地 application.yml。

同一个配置项,如果 Nacos 和本地都配了,最终以 Nacos 上的值 为准

这里可以学一下 springboot 配置文件和配置文件的优先级

配置文件

java 复制代码
spring:
  config:
    import:
      - optional:nacos:ezgo.yaml
      - optional:nacos:oa-service-dev.yaml
  cloud:
    inetutils:
      preferred-networks:
        - 172.29
    loadbalancer:
      ip: true
    nacos:
      server-addr: http://127.0.0.1:8848
      discovery:
        enabled: true
        namespace: czzjk_${spring.profiles.active}
        group: DEFAULT_GROUP
      config:
        enabled: true
        namespace: czzjk_${spring.profiles.active}
        group: DEFAULT_GROUP
        file-extension: yaml

这份配置是 Spring Cloud Alibaba + Nacos 的标准接入配置,核心作用就两件事:把 Nacos 当成配置中心和服务注册中心接进来,并指定连哪个环境(命名空间)

报错

若不启动nacos, 本地服务启动也会失败

可能原因 说明
实际没有 optional: 写成 nacos:ezgo.yaml,就会强制要求 Nacos 可达
Nacos 上配置不存在 没有 ezgo.yaml、oa-service-dev.yaml,且没加 optional:
命名空间没建 namespace: czzjk_dev 对应的命名空间 ID 不存在
端口/网络不通 8848 没启动,或防火墙、Docker 端口没开放
Nacos 3.x 控制台端口变了 3.x 控制台可能是 8080,但客户端通信仍用 8848 / 9848
相关推荐
Moment4 分钟前
写给迷茫的应届生,怎样在 AI 时代争取更多机会
前端·后端·面试
fengci.12 分钟前
CTF2MISC中等部分
开发语言·前端·学习
涛涛ing19 分钟前
那个PR太干净了,干净到我差点直接点了合并
前端
去伪存真22 分钟前
稠密检索负责脑补,稀疏检索负责兜底:拆解 RAG 倒排索引的“查字典”艺术
前端·agent
喵个咪1 小时前
GoWind 拆解:全链 ID 类型体系——int64 定版与前端字符串化契约
前端·后端·go
喵个咪1 小时前
GoWind CMS 拆解:Flutter 设计系统内核——双态 token、四档断点与自适应壳层
前端·flutter·交互设计
喵个咪2 小时前
GoWind CMS 拆解:发布审批——多级推进、逐级角色与全程留痕
前端·后端·go
喵个咪2 小时前
GoWind Flow 拆解:一个 Go 工作流引擎与它的双模式设计器
前端·后端·go
喵个咪2 小时前
GoWind Admin 拆解:打印模板设计器——从画布到服务端 PDF 的完整打印链路
前端·后端·go
总要学点什么3 小时前
第96篇:三维数据加载-城市建筑白模样式+着色器——让色带按体量上色,最白的那档却涂不上去
前端·gis·webgl·cesium·着色器·空间分析·白模