C/C++教程

nacos源码学习

本文主要是介绍nacos源码学习,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

------------恢复内容开始------------

基于源码版本(nacos1.4.2)

Nacos的注册: 

  注册功能: 客户端启动 找到Nacos服务端 首先进到方法  serverProxy.registerService(groupedServiceName, groupName, instance);

        其发送了一个Http请求向服务端 用以注册Instance

        服务端: 接受客户端请求后  初始化相关命名空间等信息 addInstance(namespaceId, serviceName, instance.isEphemeral(), instance);

           然后将信息放入注册表

public void putService(Service service) {
    if (!serviceMap.containsKey(service.getNamespaceId())) {
        synchronized (putServiceLock) {
            if (!serviceMap.containsKey(service.getNamespaceId())) {
                serviceMap.put(service.getNamespaceId(), new ConcurrentSkipListMap<>());
            }
        }
    }
    serviceMap.get(service.getNamespaceId()).putIfAbsent(service.getName(), service);
}

 

 

ps~~: 一些琐碎技术点 @FunctionalInterface JDK1.8新特性 函数式接口声明

------------恢复内容结束------------

这篇关于nacos源码学习的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!