spring cloud alibaba之nacos服务注册源码流程图

1.0 Nacos相关问题

1:服务端—默认是集群,启动时会报错。因此本地加上配置-Dnacos.standalone=true
在这里插入图片描述
2:客户端,要使用配置中心
如果默认是application.yml 用这个配置的话,会启动不成功,要改成bootstrap.yml优先级

2.0 Nacos 客户端注册流程

在这里插入图片描述

3.0 nacos 服务端注册流程

在这里插入图片描述
在这里插入图片描述

4.nacos1.X 架构以及存在的问题

在这里插入图片描述
1:心跳数量多,导致 TPS 居高不下
2:通过心跳续约感知服务变化,时延长
3:UDP 推送不可靠,导致 QPS 居高不下
4:基于 HTTP 短连接模型,TIME_WAIT 状态连接过多
5:配置模块的 30 秒长轮询引起的频繁 GC
6:cp协议不可靠,用的是假raft协议,通知失败,回滚相关业务没有补偿

5.0 nacos2.x架构

在这里插入图片描述
引入grpc协议
1)优点

客户端不再需要定时发送实例心跳,只需要有一个维持连接可用 keepalive 消息即可。重复 TPS 可以大幅降低。

TCP 连接断开可以被快速感知到,提升反应速度。

长连接的流式推送,比 UDP 更加可靠;nio 的机制具有更高的吞吐量,而且由于可靠推送,可以加长客户端用于对账服务列表的时间,甚至删除相关的请求。重复的无效 QPS 可以大幅降低。

长连接避免频繁连接开销,可以大幅缓解 TIME_ WAIT 问题。

真实的长连接,解决配置模块 GC 问题。

更细粒度的同步内容,减少服务节点间的通信压力。

2)缺点

没有银弹的方案,新架构也会引入一些新问题

内部结构复杂度上升,管理连接状态,连接的负载均衡需要管理。

数据又原来的无状态,变为与连接绑定的有状态数据,流程链路更长。

RPC 协议的观测性不如 HTTP。即使 gRPC 基于 HTTP2.0Stream 实现,仍然不如直接使用 HTTP 协议来的直观

nacos2.0架构设计文章.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值