Nacos架构&原理
协议的复杂更让数据⼀致性成为程序员大牛们吹水的 Nacos 架构 < 68 常见话题。不过从协议层面上看,⼀致性的选型已经很长时间没有新的成员加入了。目前来看基本 可以归为两家:⼀种是基于 Leader 的非对等部署的单点写⼀致性,⼀种是对等部署的多写⼀致性。 当我们选用服务注册中心的时候,并没有⼀种协议能够覆盖所有场景,例如当注册的服务节点不会 定时发送心跳到注册中心时,强⼀致协议看起来 ⼀致性时,使用⼀个代理,通过可控制的规则进行转发。 目前的⼀致性协议实现,⼀个是基于简化的 Raft 的 CP ⼀致性,⼀个是基于自研协议 Distro 的 AP ⼀致性。Raft 协议不必多言,基于 Leader 进行写入,其 CP 也并不是严格的,只是能保证⼀ 半所见⼀致,以及数据的丢失概率较小。Distro 协议则是参考了内部 ConfigServer 和开源 Eureka, 在不借助第三方存储 跨地域延迟要求能够在每个地域都部署集群的时候,我们现有的方案有多机房容灾、异地多活、多 数据中心等。 77 > Nacos 架构 图 8 Nacos 的多机房部署和容灾 首先是双机房容灾,基于 Leader 写的协议不做改造是无法支持的,这意味着 Zookeeper 不能在 没有人工干预的情况下做到双机房容灾。在单机房断网情况下,使机房内服务可用并不难,难的是 如何在断网恢复后做数据聚合,Zookeeper0 码力 | 326 页 | 12.83 MB | 9 月前3Spring Boot 2.0.0.M4 Reference Guide
Listener type. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Number0 码力 | 583 页 | 501.03 KB | 1 年前3Spring Boot 2.0.0.M3 Reference Guide
Listener type. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Number0 码力 | 590 页 | 513.07 KB | 1 年前3Spring Boot 1.5.6.RELEASE Reference Guide
the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Number0 码力 | 601 页 | 531.65 KB | 1 年前3Spring Boot 1.5.x-SNAPSHOT Reference Documentation
the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Default0 码力 | 616 页 | 539.69 KB | 1 年前3Spring Boot 1.5.x-SNAPSHOT Reference Documentation
polling the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Default0 码力 | 386 页 | 2.00 MB | 1 年前3Spring Boot 1.5.22.RELEASE Reference Documentation
polling the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Default0 码力 | 386 页 | 2.00 MB | 1 年前3Spring Boot 1.5.22.RELEASE Reference Documentation
the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Default0 码力 | 615 页 | 539.39 KB | 1 年前3Spring Boot 1.5.21.RELEASE Reference Documentation
the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Default0 码力 | 615 页 | 539.46 KB | 1 年前3Spring Boot 1.5.21.RELEASE Reference Documentation
polling the consumer. spring.kafka.producer.acks= # Number of acknowledgments the producer requires the leader to have received before considering a request complete. spring.kafka.producer.batch-size= # Default0 码力 | 386 页 | 2.00 MB | 1 年前3
共 146 条
- 1
- 2
- 3
- 4
- 5
- 6
- 15