Nacos2.x配置中心源码分析

概述

源码注释参考 git 仓库,对应流程图后续补充;

启动 nacos

nacos 启动类:

java 复制代码
// com.alibaba.nacos.Nacos

@SpringBootApplication(scanBasePackages = "com.alibaba.nacos")
@ServletComponentScan
@EnableScheduling
public class Nacos {
    
    public static void main(String[] args) {
        SpringApplication.run(Nacos.class, args);
    }
}

启动参数:

bash 复制代码
-Dnacos.standalone=true
-Dnacos.home=/xxx # 可不配,指定nacos的home目录

启动时报相关类找不到,需要根据 proto 定义文件生成对应的实体类:

bash 复制代码
package com.alibaba.nacos.consistency;

import com.alibaba.nacos.consistency.entity.ReadRequest;
import com.alibaba.nacos.consistency.entity.Response;
import com.alibaba.nacos.consistency.entity.WriteRequest;

安装 proto

下载地址:https://github.com/protocolbuffers/protobuf/releases

mac 下载如下安装包:

下载完成后,解压到对应目录,并配置环境变量:

bash 复制代码
# vim .bash_profile
export PATH=/Users/zhouyan/softwares/protoc-25.1-osx-x86_64/bin:$PATH

执行 protoc 命令后出现如下提示信息,则表示 protoc 安装成功:

进入 nacos 源码对应的 main 目录,并执行:

bash 复制代码
protoc --java_out=./java ./proto/consistency.proto
protoc --java_out=./java ./proto/Data.proto  

完成后,可以看到已生成了 entity 文件了:

相关推荐
漫步者TZ13 天前
【Nacos系列】服务发现:一致性实现
nacos·服务发现
Byte Beat13 天前
springCloudAlibaba最新版本2023.0.3.2 与nacos3.0的连接不上问题记录
java·spring cloud·nacos
秋意零16 天前
【排坑指南】MySQL初始化后,Nacos与微服务无法连接??
运维·数据库·mysql·微服务·nacos·报错
Mr_hwt_12318 天前
基于nacos和gateway搭建微服务管理平台详细教程
java·spring boot·spring cloud·微服务·nacos
代码改变生活-12021 天前
Nacos 2.4.3 初始化配置连接数据库、开启鉴权及程序注册
nacos
徐子童1 个月前
《Spring Cloud Gateway 快速入门:从路由到自定义 Filter 的完整教程》
java·开发语言·spring cloud·nacos·gateway
意倾城1 个月前
Nacos注册中心原理
spring cloud·nacos
沛沛老爹1 个月前
微服务难题?Nacos服务发现来救场
微服务·nacos·架构·服务发现·注册中心·服务中心
枫super1 个月前
Spring Cloud 详解:2025 最新技术与最佳实践
后端·spring·spring cloud·eureka·nacos·gateway·openfeign
徐子童1 个月前
《Nacos终极指南:集群配置+负载均衡+健康检查+配置中心全解析,让微服务稳如老狗!》
spring·spring cloud·nacos·负载均衡·配置中心·集群访问·健康检查机制