分布式共识一致性教程

     

数据更改事件的三种类型

23 12K

数据变更事件是Debezium等变更数据捕获 (CDC) 解决方案的核心。它们描述对数据库中特定记录所做的更改,并允许事件使用者根据此信息采取行动,从而实现广泛的用例,例如实时 ETL(通过将更新的数.

CAP定理的缺点

40 2K

2000 年,埃里克-布鲁尔(Eric Brewer)在 "分布式计算原理会议"(Principles of Distributed Computing conference)上发表题为 "迈向稳健的.

UUID7与UUID4简单比较

85

UUID(通用唯一标识符)是一种用于标识信息的标准化方法。UUID版本4是最常见的UUID版本,它基于随机数生成。UUID 版本 4 是什么?UUID 是通用唯一标识符的缩写,是一个 128 位标识符.

分布式数据库系统中主从、主主和无主三种复制算法

70 12K

分布式系统中的复制对于确保数据一致性、可用性和系统弹性至关重要。这是一种将数据存储在多个节点或服务器上的策略,即使在服务器故障或维护期间也可以防止数据丢失并实现不间断访问。1、单领导者主从复制:涉及一.

PACELC定理与CAP定理比较

191

根据CAP定理,数据库即使在15天后才返回查询响应,也是可用的,但对于任何真实世界的应用程序来说,这种延迟是不可接受的。什么是CAP定理CAP定理是分布式计算领域的一个基本理论,它由计算机科学家Eri.

数据库主键三种唯一标识符比较

102 3K

本文讨论了在数据库模式中使用自动递增整数键和 UUID 作为主键之间的权衡。文章提议了第三种专有方案,即时间排序唯一标识符(TSID)。以下是三种方案总结:自动递增整数键方案:具有出色的性能和按时间排.

数据库全面知识详细讲解

320 1 25K

大约一年前,我在考虑下一个项目应该选择哪个数据库时,发现自己对数据库的区别了解得还不够。我浏览了不同的数据库网站,看到的大多是市场营销和我不理解的词汇。这时,我决定阅读 Alex Petrov 所著的.

TiDB:基于Raf的类似CRDB分布式数据库

102 4K

TiDB是一个开源混合事务和分析处理(HTAP)数据库,由 PingCap 开发。 TiDB 服务器是用 Go 编写的,是查询/事务处理组件;它是无状态的,因为它不存储数据并且仅用于计算。 底层键值存.

PolarDB-SCC:阿里低延迟强一致性读取的云数据库分析

113 6K

阿里巴巴组的这篇论文讨论了如何在PolarDB数据库部署中从从节点执行低延迟强一致性读取。发表在VLDB'23 上。PolarDB采用关系型数据库规范的主从架构。主节点是读写 (RW) 节点,辅助节点.

Metadata:分布式系统设计要点和建议

108 6K

这些建议提示都是分布式系统研究人员和从业人员几十年来的集体成果。提示分为三类:功能、性能和容错:功能: 应用抽象 减少协调 拥抱单调性 表现: 偏爱偏序而不是全序 杠杆时间 使用间接和代理 模拟估算 .

缓存如何满足每日 12 亿个API请求?

102 5K

在 RevenueCat,我们每天处理超过 12 亿个请求。只有在以下情况下您才能有效地做到这一点: 您可以在许多 Web 服务器之间分配负载。 您可以使用缓存来加速对热数据的访问并保护后端系统和数据.

帮助理解分布式系统复制算法的开源项目

67 3K

在分布式系统中,快速编码和测试对于理解Paxos等复杂概念至关重要。这个小框架来快速编写和测试各种复制机制。可以快速实现复制算法并编写 JUnit 测试。它还提供了引入进程崩溃、网络断开、网络延迟和时.

不变性是一种更好的调试器?

226 2K

来自Marc's Blog的文章:不变性是推理算法、数据结构和分布式系统的强大工具。对于您设计或实现的任何复杂系统或算法,都值得考虑一组不变性。以这样的方式构建您的实现也是值得的,即使是全局不变性也可.

用生活案例形容说明什么是CAP定理

379 1 3K
您经常会听到 CAP 定理,它规定了设计分布式系统时的某种上限。第 1 章:成立"纪念公司" :昨晚,当你的妻子感谢你记得她的生日并给她带了礼物时,你突然产生了一个奇怪的想法。人们总是记不住事情。而你.

一致性模式

538 3K

分布式系统中的一致性模型:在分布式数据系统的三个属性(一致性、可用性和分区容错性)中选择两个。- Eric Brewer,CAP 定理分布式系统具有可扩展性和容错性等优点。然而,维持分布式系统的一致性.

typeid:受 Stripe ID 启发的类型安全、K-sortable、全局唯一标识符

579

TypeIDs是UUIDv7的一个现代的、类型安全的扩展。TypeIDs被规范地编码为小写的字符串,由三部分组成: 一个类型前缀 一个下划线'_'分隔符 一个128位UUIDv7编码为base32的2.

深入了解分布式键值存储etcd

577 3K

在分布式系统领域,确保跨多个节点的数据的一致性和协调性至关重要。etcd 由 CoreOS 团队开发,受到 Raft 共识算法的启发,是一个开源的分布式键值存储,为应用程序提供可靠的分布式协调。它广泛.

Kafka的关键配置min.insync.replicas

581

Kafka的关键配置min.insync.replicas :用户消息生产的客户端配置,表示消息生产者认为写入成功之前确认收到记录的代理数量。 - acks==0 — 发送请求时认为写入成功 - 无需.

在没有 zookeeper 的情况下运行 Kafka

484

Kafka在其 Kafka Raft Metadata 模式中使用 Raft 共识算法进行领导者选举,从而消除了对 ZooKeeper 管理集群元数据的依赖。Raft算法是一种共识协议,旨在确保分布式.

为什么 Apache Kafka 不需要 Fsync 来保证安全?

482 2K

Apache Kafka 不需要 fsyncs 来确保安全,因为它在其复制协议中包含恢复。它是一个真实世界的分布式系统,使用异步日志写入 + 恢复,并内置一些额外的额外安全性。异步日志写入使其能够在各.

时钟和因果关系 - 分布式系统中的排序事件

394

系统事件可以根据它们发生的时间来排列。时钟计时并产生时间戳。传统时钟(例如时钟)使用通用参考来了解时间。该参考可以是内部硬件或使用 NTP 等协议提供时间的公共服务。然而,由于时钟漂移和/或网络时间延.

如何探测不健康 Kafka 消费者并将其自动重启?

1251 5K
在 Cloudflare,我们采取措施确保我们在基础设施的各个层面都能抵御故障。这包括 Kafka,我们将其用于关键工作流程,例如发送对时间敏感的电子邮件和警报。我们学到了很多关于保持利用 Kafka.

如何横向扩展 PostgreSQL?

1825 18K

水平扩展是在不影响数据完整性、事务安全性和查询性能的情况下跨多个服务器分布数据的艺术和科学。只读副本只读副本通常指的是“备用”服务器,它冗余地复制主服务器上的所有数据,持续与主服务器保持同步,并允许客.

集合set复制:通过锁定广播实现无全序的容错算法

849 2K

虽然状态机复制是实现任何理想功能的黄金标准,但它需要对所有交易 (事件)进行完全的总排序(全序),在某些情况下,这种开销是不必要的。事实证明,在许多自然用例中,特别是规范的简单代币支付用例,不需要全序.

事件溯源CQRS不必引入最终一致性 - jamesmh

1775 1 3K
事件溯源经常会被误解。这包括自动使用事件溯源意味着您必须在系统中各处引入最终一致性的想法。有多种技术可以处理最终一致性。但是,也有一些技术和模式可以完全消除最终的一致性!在本文中,我想重点介绍一些使用.

基于Postgres逻辑复制的推送式发件箱模式

1759 1 11K

只有几个模式让我觉得很舒服:“如果你想构建成熟的系统,你应该一直使用它”。其中之一是发件箱模式。为什么?因为它保证了你的业务流程和沟通不会卡在中间。正如我在发件箱中解释的,收件箱模式和交付保证解释了:.

async-raft:使用 Tokio 框架实现 Raft 分布式共识协议

1254

速度极快的 Rust、现代共识协议和可靠的异步运行时——该项目旨在为下一代分布式数据存储系统(SQL、NoSQL、KV、流式传输、图形......或者更奇特的东西)提供共识主干)。这个 crate 与.

分布式系统中的数据复制

1491 1 2K
数据复制是制作数据项的多个副本以确保可用性的过程。复制的数据通常存储在不同的数据库实例中,因此即使一个实例发生故障,我们也可以从其他实例中获取数据。实现数据复制的一种流行架构是主从架构。主从架构为了理.

分布式系统的仲裁模式

1514
任何分布式系统的常量之一是失败。我们构建的系统能够抵御故障。假设我们想要复制到集群中的不同节点以实现高可用性和容错。我们需要问的下一个问题是——我们集群中有多少节点需要确认他们从原始服务器获得了复制副.

分布式系统中的内存限速器 - ajin

971
在多台服务器分布在世界各地不同地区的情况下,为每台服务器实施速率限制器将导致两个主要问题: 不一致 竞争条件 在本文中,我们将探讨这两个主要问题,以及我们如何实施更好的策略来解决分布式系统的这些问题。.