nacos源码解析1.4.1版本

1、下载源码

https://github.com/alibaba/nacos/releases

2、导入源码到idea中

注意事项:

 

 

所以需要在maven的setting文件添加

<mirror>
         <id>sona</id>
        <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun nacos</name>
    </mirror>

 

 

3、运行项目

 

 注意事项:

需要添加:-Dnacos.standalone=true,以单机模式启动

 

 5、访问地址

 nacos注册原理:

理解:nacos客户端服务发送post请求到服务器,服务端把实例放到队列,然后异步去实现注册,就返回给客户端了,提高了效率问题。

    注册是使用的copyonwrite的方式,不是加锁。

   注册表结构map<string,map<string,service>>是为了支持dev、test、prod环境的支持。

客户端发送心跳接口,定时发送,服务端根据当前时间判断上次心跳时间,是否15秒,如果大于15秒设置健康状态为false,如果30秒还没有收到就下线。

微服务客户端(注册、发送心跳)

openfeign---ribbon实现域名地址解析

三高架构如何设计:

高可用、高并发、高扩展一步一步设计:微服务包括,服务注册、网关、服务熔断、服务降级、分布式事务。

 服务熔断和降级

理解:一个流程里面会调用很多微服务、如果某个服务出现错误,不影响流程。

可以使用sentinel框架实现服务的降级处理。

 服务熔断理解:当一个服务不可用的时候,超过设置的阈值就会走降级方法

 

posted @ 2021-01-27 14:27  刘百会  阅读(437)  评论(0编辑  收藏  举报