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框架实现服务的降级处理。
服务熔断理解:当一个服务不可用的时候,超过设置的阈值就会走降级方法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?