13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

聊一聊我在组内的Nacos

Nacos简介

Nacos : Naming and Configuration Service,可打包部署配置中心和注册中心,也可独立部署其中之一,配置中心、控制台依赖mysql,由阿里巴巴2018年8月开源,github 19.1k star(截止2021.08.24)

成都创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为梓潼企业提供专业的网站建设、成都网站设计,梓潼网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。

本文只讲解服务发现部分。

服务注册发现模型

namespace:环境隔离、租户隔离;不同namespace服务无法相互发现

group:业务隔离;解决不同业务下serviceName相同的问题;可获取默认或指定group实例

cluster:集群隔离;可定制化路由偏好;可获取全部或指定集群实例

临时实例

在Nacos中他们的主要区别如下:

emphemral true false
名称 临时实例 永久实例
CAP AP CP
一致性协议 distro raft
是否持久化
健康检查方式 心跳/连接 服务端检查(TCP、HTTP、MYSQL)

Dubbo适配

路由模式

客户端路由模式

客户端(SDK)根据service,指定部分或全部group、cluster获取相应的实例,客户端根据权重或其他策略进行路由

服务端路由模式

插件式selector实现自定义路由模式,可对接第三方CMDB

与CMDB对接,根据service、ip等信息获取元数据(如机房位置)

自定义实现选择器selector,根据手动配置规则表达式选取相应实例

架构设计

存储模型

全量数据位于内存中,每个节点数据保持一致,节点间采取同步协议进行复制

数据结构

一个客户端连接为一个client,打包客户端的信息与注册、订阅数据

publisherIndexes => 哪些客户端注册了哪些服务

同步协议

distro

raft

通信协议

功能/版本 1.x distro 1.x raft 2.x distro 2.x raft
注册/注销 http http grpc http
订阅 http http grpc grpc
心跳/健康检查 http TCP/http/mysql TCP TCP/http/mysql
推送 udp udp grpc grpc
集群间数据同步 http/distro http/自研raft grpc/distro jraft

生态建设

Nacos-sync

主要用于注册中心迁移以及多数据中心数据同步

Nacos-coredns-plugin

consumer侧可使用域名方式发现服务,无需使用Nacos客户端

Nacos-istio

支持Nacos数据同步至MCP Server

优缺点分析


分享名称:聊一聊我在组内的Nacos
网站链接:http://cdbrznjsb.com/article/dphecho.html

其他资讯

让你的专属顾问为你服务