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;

}
相关推荐
海兰6 小时前
使用 Spring AI 打造企业级 RAG 知识库第二部分:AI 实战
java·人工智能·spring
历程里程碑7 小时前
二叉树---二叉树的中序遍历
java·大数据·开发语言·elasticsearch·链表·搜索引擎·lua
小信丶7 小时前
Spring Cloud Stream EnableBinding注解详解:定义、应用场景与示例代码
java·spring boot·后端·spring
无限进步_7 小时前
【C++】验证回文字符串:高效算法详解与优化
java·开发语言·c++·git·算法·github·visual studio
亚历克斯神7 小时前
Spring Cloud 2026 架构演进
java·spring·微服务
七夜zippoe7 小时前
Spring Cloud与Dubbo架构哲学对决
java·spring cloud·架构·dubbo·配置中心
海派程序猿7 小时前
Spring Cloud Config拉取配置过慢导致服务启动延迟的优化技巧
java
阿维的博客日记7 小时前
为什么不逃逸代表不需要锁,JIT会直接删掉锁
java
William Dawson7 小时前
CAS的底层实现
java
九英里路7 小时前
cpp容器——string模拟实现
java·前端·数据结构·c++·算法·容器·字符串