个人简介

Echo Blog


江湖无名 安心练剑
  • 分布式注册中心 nacos-30-Nacos 注册中心服务数据模型
    Nacos 注册中心服务数据模型 在上文 Nacos 注册中心的设计原理中,简要介绍了服务发现的背景、业界对动态服务发现的解决方案及 Nacos 针对动态服务发现的总体设计思路,让读者对服务发现及 Nacos 的注册中心有了一个框架性的了解。 从本文开始,本书将展开介绍 Nacos 注册中心中的各种技术概念、细节及设计,帮助读者更好地理解 Nacos 注册中心。 本节将较为详尽的展开介...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-29-Nacos 注册中心的设计原理
    前言 服务发现是一个古老的话题,当应用开始脱离单机运行和访问时,服务发现就诞生了。 目前的网络架构是每个主机都有一个独立的 IP 地址,那么服务发现基本上都是通过某种方式获取到服务所部署的 IP 地址。 DNS 协议是最早将一个网络名称翻译为网络IP的协议,在最初的架构选型中,DNS+LVS+Nginx 基本可以满足所有的 RESTful 服务的发现,此时服务的IP列表通常配置在 ng...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-28-Nacos 寻址机制
    前提 Nacos 支持单机部署以及集群部署,针对单机模式,Nacos 只是自己和自己通信; 对于集群模式,则集群内的每个 Nacos 成员都需要相互通信。 因此这就带来一个问题,该以何种方式去管理集群内的 Nacos 成员节点信息,而这,就是 Nacos 内部的寻址机制。 设计 无论是单机模式,还是集群模式,其根本区别只是Nacos成员节点的个数是单个还是多个,并且,要能够感知到节...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-27-Nacos 通信通道
    Nacos长链接 一.现状背景 Nacos 1.X 版本 Config/Naming 模块各自的推送通道都是按照自己的设计模型来实现的。 产品 推送模型 数据一致性 痛点 说明 Nacos Config 异步 Servlet 基于MD5比对一...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-26-Nacos 自研 Distro 协议
    背景 Distro 协议是 Nacos 社区自研的一种 AP 分布式协议,是面向临时实例设计的一种分布式协议,其保证了在某些 Nacos 节点宕机后,整个临时实例处理系统依旧可以正常工作。 作为一种有状态的中间件应用的内嵌协议,Distro 保证了各个 Nacos 节点对于海量注册请求的统一协调和存储。 设计思想 Distro 协议的主要设计思想如下: Nacos ...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-25-Nacos Consistency Protocols 一致性协议
    为什么 Nacos 需要一致性协议 Nacos 在开源支持就定下了一个目标,尽可能的减少用户部署以及运维成本,做到用户只需要一个程序包,就可以快速以单机模式启动 Nacos 或者以集群模式启动 Nacos。 而 Nacos 是一个需要存储数据的一个组件,因此,为了实现这个目标,就需要在 Nacos 内部实现数据存储。 单机下其实问题不大,简单的内嵌关系型数据库即可;但是集群模式下,就需...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-24-Nacos 配置模型
    背景 在单体架构的时候我们可以将配置写在配置文件中,但有一个缺点就是每次修改配置都需要重启服务才能生效。 当应用程序实例比较少的时候还可以维护。 如果转向微服务架构有成百上千个实例,每修改一次配置要将全部实例重启,不仅增加了系统的不稳定性,也提高了维护的成本。 那么如何能够做到服务不重启就可以修改配置? 所有就产生了四个基础诉求: 需要支持动态修改配置 ...
    2022-07-02 01:22:02 | Distributed
  • 分布式注册中心 nacos-23-Nacos 架构
    Nacos 架构 Nacos 开源之前在阿里内部已经发展了十年,沉淀了很多优秀的能力,也有很多历史负担,在开源的时候我们取其精华进行开源,为了提升代码的健壮性和扩展性,进行了充分的分层和模块化设计。 设计原则 极简原则,简单才好用,简单才稳定,简单才易协作 架构一致性,一套架构要能适应开源、内部、商业化(公有云及专有云)3 个场景 ...
    2022-07-02 01:22:02 | Distributed