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 文件了:

相关推荐
岁岁岁平安5 天前
Java+SpringBoot+Dubbo+Nacos快速入门
java·spring boot·nacos·rpc·dubbo
奋斗的小monkey6 天前
Java微服务实战:从零搭建电商用户服务系统
java·spring boot·微服务·nacos·电商系统·redis缓存
月夕·花晨20 天前
Gateway-断言
java·开发语言·分布式·spring cloud·微服务·nacos·sentinel
Gogo81624 天前
k8s 跟 nacos 关于服务注册以及服务发现
java·nacos·k8s
hzzzzzo01 个月前
微服务核心组件实战:Nacos 与 Ribbon 的应用
spring cloud·微服务·ribbon·nacos·架构
一包烟电脑面前做一天2 个月前
.NetCore下Ocelot + Nacos 实现负载均衡
nacos·负载均衡·.netcore·ocelot·ocelot集成nacos
一包烟电脑面前做一天2 个月前
.NetCore 接入 Nacos,实现配置中心和服务注册
nacos·.netcore·服务注册发现·配置中心
草履虫建模2 个月前
若依微服务一键部署(RuoYi-Cloud):Nacos/Redis/MySQL + Gateway + Robot 接入(踩坑与修复全记录)
redis·mysql·docker·微服务·云原生·nacos·持续部署
叁金Coder2 个月前
业务系统跳转Nacos免登录方案实践
前端·javascript·nginx·nacos
●VON3 个月前
重生之我在暑假学习微服务第七天《微服务之服务治理篇》
java·学习·微服务·云原生·nacos·架构·springcloud