Nacos

Nacos两大模块:服务注册发现与配置中心

Nacos数据一致性

共识算法,通过算法保证各个节点之间数据一致性。

强一致性算法:Raft和Distro,Nacos使用JRaft算法(因为Nacos 是Java 技术栈,因此只能在JRaft、ZAB、Apache Ratis 中选择,但是ZAB 因为和Zookeeper 强绑定,再加上希望可以和Raft 算法库的支持团队随时沟通交流,因此选择了JRaft,选择JRaft 也是因为JRaft 支持多RaftGroup,为Nacos 后面的多数据分片带来了可能)。

Nacos一致协议层

三、Nacos协议封装

独立出来的协议模块支持强一致性和最终一致性协议,数据的一致性如何保障?其实也就是传统的读和写,所以独立的模块提供读和写两个接口,任何使用⼀致性协议,只需要使用getData 以及write 方法即可。**getData实现数据读取;**write实现数据写入

java 复制代码
public interface ConsistencyProtocol<T extends Config, P extends RequestProcessor> exten
ds CommandOperations {

Response getData(ReadRequest request) throws Exception;
Response write(WriteRequest request) throws Exception;

}
相关推荐
IT 行者1 分钟前
Spring Security Session 序列化策略分析
java·spring boot·后端·spring
__万波__1 分钟前
二十三种设计模式(十六)--迭代器模式
java·设计模式·迭代器模式
.鸣9 小时前
set和map
java·学习
ha_lydms9 小时前
5、Spark函数_s/t
java·大数据·python·spark·数据处理·maxcompute·spark 函数
黄河滴滴10 小时前
java系统变卡变慢的原因是什么?从oom的角度分析
java·开发语言
侠客行031710 小时前
Mybatis二级缓存实现详解
java·mybatis·源码阅读
老华带你飞10 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
Edward1111111111 小时前
tomcat_servlet
java·servlet·tomcat
短剑重铸之日11 小时前
SpringBoot声明式事务的源码解析
java·后端·spring·springboot
李白的粉11 小时前
基于springboot的银行客户管理系统(全套)
java·spring boot·毕业设计·课程设计·源代码·银行客户管理系统