Nacos2.x配置中心源码分析
概述
源码注释参考 git 仓库,对应流程图后续补充;
启动 nacos
nacos 启动类:
// 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);
}
}
启动参数:
-Dnacos.standalone=true
-Dnacos.home=/xxx # 可不配,指定nacos的home目录
启动时报相关类找不到,需要根据 proto 定义文件生成对应的实体类:
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 下载如下安装包:
下载完成后,解压到对应目录,并配置环境变量:
# vim .bash_profile
export PATH=/Users/zhouyan/softwares/protoc-25.1-osx-x86_64/bin:$PATH
执行 protoc 命令后出现如下提示信息,则表示 protoc 安装成功:
进入 nacos 源码对应的 main 目录,并执行:
protoc --java_out=./java ./proto/consistency.proto
protoc --java_out=./java ./proto/Data.proto
完成后,可以看到已生成了 entity 文件了: