分布式事务教程

     

使用 Kafka 和 Debezium 调度数百万条消息 - Yotpo

1657 1 7K

Yotpo使用Apache Kafka和Debezium为每分钟数百万条消息实施了高度可扩展且可靠的预定消息解决方案:实现大规模分布式系统并不容易,因为传统的数据库调度无法扩展。此外,在使用微服务架构.

tikv/raft-rs:在 Rust 中实现的 Raft 分布式共识算法源码

1589 1

在构建分布式系统时,一个主要目标通常是构建容错。也就是说,如果网络中的一个特定节点出现故障,或者存在网络分区,则整个集群不会发生故障。参与分布式共识协议的节点集群必须就价值达成一致,一旦达成该决定,该.

配置Apache Kafka生产者参数以获得高可用性和弹性 - Nabraj

1143 4K
Apache kafka以其弹性、容错性和高吞吐量而闻名。但它的表现并不总是满足所有人的期望。在某些情况下,我们可以通过缩小或扩大代理规模来改进它。而在大多数情况下,我们必须玩配置游戏。在卡夫卡的生态.

分布式共识协议Paxos本质是一次写入寄存器? - maheshba

1208 1 4K

在系统中,我们通过抽象来处理复杂性。对于任何系统,都存在三个关键问题: 它实现了什么抽象? 这种抽象的设计空间是什么? 为什么这个抽象有用? 在这篇文章中,我们将回答 Paxos 的前两个问题。本文档.

如何在微服务分布式架构中删除数据? - bennorthrop

2068 1 3K

尽管微服务具有各种好处,但似乎也有许多新的复杂性和并发症。我最近经常遇到的一种情况(并没有找到很多很好的资源)是删除数据。考虑一个简单的例子:有三种服务:Product 服务,管理与所提供的产品,Or.

亚马逊认为在分布式系统中必须避免使用回退

1230 1 2K

在分布式系统领域,回退策略是最难应对的挑战之一,对于时间敏感的服务来说尤其如此。更糟糕的是,不良的回退策略可能需要很长时间(甚至数年)才能产生影响,而优质策略与不良策略之间的差异并不明显。本文将重点讲.

使用 Debezium 实现真正的原子微服务以确保数据一致性 – brainDOSE

3084 1 46K
传统的微服务发件箱模式实现需要开发人员手动创建发件箱事件表并编写代码将数据从发件箱表发送到相应的消息平台。Debezium 发件箱事件路由器和发件箱 Quarkus 扩展一起解决了这个问题,并通过声明.

如何克服 Apache Kafka中的数据顺序问题 - DATAVERSITY

2064 2 4K
通过了解 Apache Kafka 如何对数据进行排序,您可以确保您的数据或应用程序保持良好的工作状态。尽管Apache Kafka已经赢得了作为功能强大的分布式流媒体平台的声誉,但在确保按您希望的顺.

使用Spring TransactionSynchronization执行事务后提交的调度方法 - Singh

3782 4 6K

这篇博客试图解释我们如何利用Spring的TransactionSynchronization来实现在事务提交后执行业务代码,以及如何使用 Spring AOP巧妙优雅实现的。在spring中使用事务.

每个Java程序员都犯过的Spring事务@Transactional错误 - Kozhenkov

1739 1 6K

可能最常用的 Spring 注释之一是@Transactional。尽管它很受欢迎,但它有时会被误用,从而导致一些不是软件工程师想要的东西。在这篇文章中,我收集了我个人在项目中遇到的问题。我希望这份清.

Calvin:分区数据库系统的快速分布式事务

1418

这篇论文是由耶鲁大学的一组计算机科学家发表的,很好地讨论了分布式事务的问题,解释了为什么它很复杂,以及为什么许多分布式数据库决定完全放弃事务以简化操作。然后它引入了一个非常有趣的想法,即通过确定性锁定.

优步是如何使用Apache Flink和Kafka实现实时Exactly-Once广告事件处理?

1301 3K

优步最近推出了一项新功能:UberEats 上的广告。这种新能力带来了 Uber 需要解决的新挑战,例如广告拍卖、竞标、归因、报告等系统。本文重点介绍我们如何利用开源技术构建 Uber 的第一个“近实.

微服务的分布式事务模式比较 | RedHat

1670 1 2K
作为 Red Hat 的一名咨询架构师,我有幸参与了大量客户项目。每个客户都会带来自己的挑战,但我发现了一些共同点。大多数客户想知道的一件事是如何协调对多个记录系统的写入。回答这个问题通常涉及对双重写.

Spring Data YugabyteDB支持分布式事务

1116

YugabyteDB 是构建需要弹性和可扩展性的有状态云原生应用程序的首选数据库。YugabyteDB 为 Spring 开发人员提供了一种从一开始就在其应用程序堆栈中部署事务性、弹性和地理分布式数据.

跨微服务的 ACID 事务

982

大规模分布式系统上的分布式事务被认为本质上是邪恶的,需要按照CAP 定理,为了避免走弯路,请参考:分布式事务可能是个伪概念以及Shopify如何使用Saga等模式实现电子商务:Shopify如何使用R.

Shopify如何使用Ruby实现每小时销售1亿美元?

1035 1 6K

在 2021 年网络黑色星期五 (BFCM) 期间,Shopify 商家的销售额超过 50 亿美元,峰值销售额超过每小时 1 亿美元。在如此大规模的情况下,高可用性和快速响应时间至关重要。但即使对于较.

如何在多区域运行Zookeeper?- Ankur

1340 5K

Zookeeper将自己定义为“用于维护配置信息的集中式服务”等。为了对数据建模,它使用具有路径作为标识符并保存值的znode。在 Flipkart,我们使用 zookeeper 作为为多个应用程序提.

何时使用或不使用数据库存储过程? - DZone

1060 1

了解存储过程的优点以及何时编写存储过程以及何时避免它们。虽然在 2021 年谈存储过程可能看起来很奇怪,但您可能会对仍然使用存储过程的应用程序(旧版和新版)的数量感到震惊。存储过程是一种数据库能力,它.

Uber如何重新架构其作业平台?

1156 1 7K

优步的使命是帮助我们的消费者在全球数千个城市轻松前往任何地方并获得任何东西。在其核心,我们捕捉消费者的意图并通过将其与一组正确的提供者进行匹配来实现它。 作业履行(Fulfillment )是“向客户.

Facebook开源分布式系统的NTP时间校准器

881

这是一种可以将任何PC服务器变成时间设备的 PCIe 卡,Facebook 工程师已经构建并开源了一个 Open Compute Time Appliance,这是现代计时基础设施的重要组成部分。Fa.

Airbnb在分布式支付系统中如何避免双重支付?

1600 1 14K
Airbnb一直在将其基础架构迁移到面向服务的架构(“SOA”)。SOA 提供了许多优点,例如支持开发人员专业化和更快迭代的能力。但是,它也给计费和支付应用程序带来了挑战,因为它使维护数据完整性变得更.

分布式系统中几种“一致性”概念的简单解释 - pathelland

1380 1

一致性一词似乎至少有三种流行用法 : 数据库一致性。 这是完整交易与一些未声明的未声明规则的执行的混合。因为事务内的更新集必须由与数据库上层部分勾结的应用程序限定,所以应用程序和上层数据库可以强制执行.

分布式系统中的自主自治计算 - pathelland

896 1 5K

本文是作者pathelland二十年分布式经验分享,其中很多概念与DDD和有界上下文映射非常类似,只不过使用了fiefdom而不是domain来表达。本文介绍了一个称为fiefdom封地/领地(ban.

变更数据捕获CDC的八个实际案例 - Dunith

1767 1 4K

如何应用变更数据捕获CDC将数据从生产数据库可靠地迁移到其他系统?OLTP 数据库中积累的操作数据通常需要取出来执行事务处理以外的有用任务。这包括将数据移出数据仓库、更新缓存、仪表板等。更改数据捕获 .

NorthOne如何结合无服务器与DDD实现数字银行服务API?

1061 1 2K

NorthOne是为小型企业提供银行服务的公司,他们是如何结合serverless和领域驱动设计以及EDA实现银行工作流程的?NorthOne为小型企业提供银行服务。实际上,NorthOne是一个存款.

Eventuate:一个用于开发微服务的开源平台

3219
Eventuate是解决微服务架构中固有的分布式数据管理问题的平台,使您能够专注于业务逻辑。Eventuate包括: Eventuate Tram - 使用传统(例如 JPA/JDBC 和实体框架)持.

CasaOne工程经验:我们是如何设计领域事件的? - Deepak

1174 1 5K
在分布式系统中,事件在解耦系统的不同组件方面起着重要作用。在本文中,我们讨论如何改进领域事件的设计以解决系统中的多个问题。 上下文CasaOne租赁平台由围绕其自己的有界上下文构建的多个服务组成。去年.

号称不需要Paxos的分布式事务解决方案

862

分布式应用程序在主机之间使用复制方法,由Paxos等协议实现,这样就确保数据可用性并透明地掩盖服务器故障。本文提出了一种在数据中心内部实现复制的新方法,而无需传统方法的性能成本。我们的工作将复制责任仔.

微服务中的Saga模式 - baeldung

3912 2 4K
基于微服务的应用程序是一个分布式系统。整个系统由多个较小的服务组成,并且这些服务一起提供了整体应用程序功能。尽管这种体系结构样式提供了许多好处,但是它也有一些局限性。微服务体系结构中的主要问题之一是如.

转账问题是属于业务问题还是属于技术问题?

1330 1

将钞票在两个账户之间转移属于业务问题还是技术问题?如果属于业务问题,就使用DDD等方式去解决,如果使用技术问题,就使用分布式事务组件或中间件或数据库去解决。但是很多人默认这是一个技术问题,可以使用技术.