Nacos
文章平均质量分 92
我神级欧文
这个作者很懒,什么都没留下…
展开
-
Nacos集群(二)阿里自研弱一致性Distro协议核心实现
Nacos中有CP和AP两种模式,而这两种模式在实现数据一致性方案上面是完全不一样的,对于CP模式而言,使用的是raft这种强一致性协议,对于AP模式而言,则是使用阿里自创的Distro协议,那么这里我们就来看看这个Distro协议在Nacos中是如何实现的一.@CanDistro注解在Nacos服务中会发现有很多接口上面加了@CanDistro这个注解,例如实例注册接口:而@CanDistro这个注解有什么用呢?通过名字大概知道它应该是跟Distro协议有关的,所以我们通过idea去看一..原创 2022-01-21 18:05:19 · 2077 阅读 · 0 评论 -
Nacos集群(一)节点启动初始化源码解析
Nacos可以选择单机模式运行和集群模式运行,在生产中基本都要使用集群模式去运行的,而对于集群模式来说,每一个Nacos节点都需要通过配置知道其余节点的地址,比如说三个节点的集群,每个节点都需要知道另外两个节点的地址,才能够形成一个集群,下面我们就来看下Nacos节点在启动时是怎么获取其余节点地址进行集群初始化的Nacos集群节点管理器ServerMemberManagercom.alibaba.nacos.core.cluster.ServerMemberManager在Nacos服务启动.原创 2022-01-21 17:56:47 · 2583 阅读 · 0 评论 -
Nacos整合SpringCloud的自动注册原理
一.问题引出单独的nacos项目中分为client端和server端,client端会调用register去向server端注册,但是我们在做微服务的时候引入的并不是单独的nacos客户端的jar包,而是springcloud alibaba nacos这个jar包,当我们引入这个jar包之后,就可以在项目启动的时候自动地往nacos服务端去注册这个服务了,那么springcloud alibaba nacos这个包能做到自动注册的原理是什么呢?二.nacos,springcloud ali原创 2022-01-18 17:50:22 · 1464 阅读 · 0 评论 -
Nacos注册中心之服务实例心跳续约与实例过期下线源码解析
1.服务实例心跳续约com.alibaba.nacos.naming.controllers.InstanceController#beat/** * 给某个实例发送心跳 * * @param request http request * @return 实例详细信息 * @throws Exception any error during handle */@CanDistro@PutMapping("/beat")@Secured(parser = NamingResourc原创 2022-01-18 17:42:50 · 2999 阅读 · 0 评论 -
深入理解Nacos源码注册中心之服务发现(订阅拉取)
Nacos的服务发现功能有两种实现方式,一种是客户端主动请求服务端拉取注册的实例,另一种是客户端对服务端进行订阅之后,当服务端注册的实例发生变更之后,服务端会主动推送注册实例给客户端。第一种主动拉取的模式比较简单其实就是客户端发起拉取请求之后然后服务端根据请求的内容去双层map结构中找到对应的注册实例返回给客户端,而第二种方式则比较复杂,需要服务端去进行数据的推送,那么下面我们就来看下Nacos订阅拉取服务是如何实现的1.Nacos客户端发起拉取服务请求我们先来看下订阅拉取服务这个功能在客户端是.原创 2022-01-18 17:39:11 · 5672 阅读 · 1 评论 -
深入解析Nacos源码注册中心AP模式之服务注册
Nacos有两种模式,一个是AP模式(最终一致性),一个是CP模式(强一致性),通常我们平时使用最多的就是它的AP模式,所以这里我们就来看一下对于一个注册中心来说,最基础的服务注册功能在Nacos中的实现原理是怎样的。com.alibaba.nacos.naming.controllers.InstanceController#register 首先先说明一下Nacos的服务端其实就是nacos-naming这个模块,这个模块就是一个springboot项目,所以我们可以通过官方文档直接找到它的.原创 2022-01-18 17:19:17 · 2175 阅读 · 0 评论