IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> nacos 注册中心 -> 正文阅读

[大数据]nacos 注册中心


tcp和grpc的keep-alive:https://blog.csdn.net/zhaominpro/article/details/103127023

协议:


一致性算法:强一致;最终一致;
区别在于:(重点在于获取更新后的数据)强一致发现失败就踢掉,能够保证所有节点都被更新上。所以获取数据时就能保证都能够不管访问那一台,都能获取到更新后的数据。
最终一致:在一定的时间后,访问所有机器,能获取到更新后的数据。
raft协议:其实就是理解的 哨兵模式;强一致性算法
paxos算法:一致性协议,比较难;
distro:最终一致性算法;
gossip:最终一致性算法;
renew(eureka):最终一致性算法;

CAP:c(一致性),A(可用性),p(分区容错)
AP:当网络分区后,为了保证可用性,系统B可以返回旧值,保证可用
CP:当网络分区后,为了保证一致性,可以拒绝请求,保证一致性

zk是cp,当发现客户端挂掉后,把客户端踢掉;一致性协议:ZAB协议。
eureka是ap,当发现客户端挂掉后,仍然提供服务;renew协议(自己开发的)
nacos:distro(AP)最终一致性。raft:强一致性。
ap就是最终一致性的;cp就是强一致性的;


强一致性和最终一致性:https://blog.csdn.net/qq_43183527/article/details/101929099


nacos选择的协议:raft和distro

distro协议(给服务注册用的):

客户端请求时,如果长时间不响应,请求其他服务器。
Nacos 每个节点是平等的都可以处理写请求,同时把新数据同步到其他节点。?
每个节点只负责部分数据,定时发送自己负责数据的校验值到其他节点来保持数据一致性。??
每个节点独立处理读请求,及时从本地发出响应

数据初始化:
新加入的节点全量拉取数据,从所有节点。


数据校验:
服务器之间有联系,相互发送心跳信息。心跳信息:本地保存的数据元信息(元信息比较重要,数据量很小)。
这个心跳的作用:
告诉大家自己活着。
检查自己信息是否是正确的。如果不正确,全量拉取一波


写操作来临时:
客户端发送写操作时,是随机选取的,他知道所有的服务端地址,随机选一个。
服务端收到请求后,先通过filter。
filter作用:
拦截到请求后,查看下该客户端的责任节点。如果是自己,直接给controller处理
如果不是,转发给这个责任节点。

责任节点上的controller对请求进行处理

服务器定期进行sync任务,把本机负责的示例信息同步给其他机器。


读操作:
直接从本机拉取数据,快速响应。

总结:
1. 当该节点接收到属于该节点负责的实例的写请求时,直接写入。
2. 当该节点接收到不属于该节点负责的实例的写请求时,将在集群内部路由,转发给对应的节点,从而完成读写。
3. 当该节点接收到任何读请求时,都直接在本机查询并返回(因为所有实例都被同步到了每台机器上)。

nacos服务器寻址:
文件寻址:每个服务器下保存着一个cluster.conf的文件,文件内容就是ip地址列表。
当启动的时候,发现这个配置文件被改动了,就需要修改集群下所有机器的配置文件。nacos内部有文件变动检测中心,会重新读取文件内容。
这里就需要一个操作,修改集群下所有机器的配置文件。这个操作nacos没去做,需要手动去做的
地址服务器寻址

服务发现模块:
spring-cloud-nacos自动注册:https://www.cnblogs.com/kjcc/p/13932926.html

临时节点和持久化节点。
区别:
临时节点类似于业务客户端,可以发送心跳给服务端的。
持久化节点类似于redis,mysql节点。不能发送心跳。
这两个区别在健康检查的时候。
临时节点可以自己发送心跳,服务端只需要统计信息就好。
持久化节点需要服务端去探测,发送一个ack报文,收到回复后需要根据回复内容调用不同的接口。同时需要关注线程池,重试等机制。


负载均衡:
客户端负载均衡,服务端负载均衡
ribbon是客户端负载均衡
nacos是服务端和服务端负载均衡

配置中心客户端获取配置源码:https://www.cnblogs.com/dyg0826/p/11404678.html

distro协议源码解析:Nacos 2.0源码分析-Distro协议概览 - 不会发芽的种子 - 博客园

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-11 22:17:06  更:2022-03-11 22:18:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:48:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码