幂等性

     

Kafka中避免重复消息的5种有效方法

158 5K

Apache Kafka 因其强大的特性而成为分布式消息系统的不错选择。在本文中,我们将探讨避免Apache Kafka消费者中出现重复消息的高级策略。重复消息消费的挑战Apache Kafka 的至.

如何设计高效的幂等性 API

117 2K

幂等性API意味着无论使用相同的请求体/参数成功调用该API多少次,数据/系统状态都将是相同的。在本文中,我们将提出一种同样关注 API 性能的幂等性机制。实现幂等 API 是建立安全重试机制的解决方.

建立弹性支付系统的 10 个技巧

206

Shopify Engineering 文章解释了构建弹性支付系统的 10 个最有用的提示和技巧。这是列表:1、设置低超时:他们建议尽可能调查并设置低超时。例如,Ruby 的内置 Net::HTTP .

REST API有关幂等性等11条最佳实践

328 18K

(and-how-not-to)-design-REST-APIs在我的职业生涯中,我使用了数百个 REST API 并制作了数十个。由于我经常在 API 设计中看到相同的错误,因此我认为写下一组最佳.

Dapr v1.12 正式发布:发件箱模式是亮点

327 3K

Dapr 是一种可移植、事件驱动的运行时,使任何开发人员都可以轻松构建在云和边缘运行的弹性、无状态和有状态应用程序,并支持多种语言和开发框架。Dapr 1.12.0 发布!以下是 v1.12 版本的亮.

Go-memoize:缓存函数调用结果的开源工具

131 2K

这是一个简单、简洁的 Go 记忆器。缓存昂贵的函数调用。Go-memoize 已经投入生产几年了。在内存中缓存昂贵的函数调用,并具有可配置的超时和清除间隔:import (    "time"    .

又是每个程序员都应该知道的:幂等性

137 2K

在编程世界中,每个开发人员都应该理解许多概念,以便构建高效可靠的系统。其中一个重要的概念是幂等性,它指的是操作或函数的属性,多次应用时产生的结果与仅应用一次时产生的结果相同。这似乎是一个简单的概念,但.

纳秒时间戳不适合做唯一标识符

354

在现代系统中,纳秒时间戳碰撞的频率有多高?答案是:非常频繁,比如在同时读取所有 4 个物理内核的时钟时,有 5%的样本会发生碰撞。因此,采用原始纳秒时间戳作为唯一标识符是不安全的。 test prog.

RESTful API和事件驱动系统中的幂等性

446 3K

如果您正在构建 REST API 或事件驱动系统,幂等性是您需要考虑的一个非常重要的属性,因为它对于拥有弹性系统至关重要,并且它将帮助您避免不必要的额外副作用。您的借记卡是否曾因同一笔交易被扣款两次?.

实现事件驱动架构EDA面临的缺点

358

以下是对构建 EDA 应用程序时应考虑的挑战性问题:1.缺乏幂等处理消费者可能会对事件进行多次处理(或者您可能需要重放事件、故障等)。使用幂等性 可以帮助您构建没有副作用的解决方案。2.误将命令与事件.

事件模式:使用幂等消费者(收件箱)检测重复消息

1183 3K
检测重复消息的唯一方法是在生产者端为事件生成一个唯一标识符。只有使用这些标识符,消费者才可能知道它第二次处理同一条消息,而不是具有相同属性的不同消息。为了防止两次处理同一条消息,常用的方法是将它们存储.

ulid/spec: 全局唯一标识符ULID是传统UUID的替代

1526 1

ULID 是 UUID 的替代品。它是可排序的并且基于时间戳+随机种子。有多种语言的实现可用。Shopify从UUID切换到ULID,INSERT提升50%,以下是他们经验:分布式系统使用不可靠的网络.

微服务使用EDA事件溯源遭遇的五个陷阱及应对办法 -Wix

2405 1 10K
事件驱动架构非常强大,非常适合分布式微服务环境。通过引入代理中介,事件驱动架构提供了解耦架构、更容易的可扩展性和更高程度的弹性。​上图请求回复(客户端-服务器)与事件流(发布-订阅)但与请求-回复客户.

什么是幂等数据管道? - Alaro

1103 2K

牛津词典中定义的幂等“是集合中的一个元素,当它自身相乘或以其他方式运算时,其值不变。”1.什么是幂等数据管道运行从源获取数据并将其多次加载到关系数据库中的管道可能会导致数据库中存在重复值,从而导致错误.

探索 Kafka Producer 的内部结构 - Alex

1025 3K

Adobe Experience Platform Pipeline是一个低延迟、基于 Kafka 的流系统。管道连接数百个 Adob​​e 组件和系统。我们的 Kafka 集群处理310B msg/.

使用幂等key实现可重试的幂等性API设计 - yeng

1640 1

今天,没有人能保证你构建的微服务不会遇到麻烦。当问题发生时,我们通常希望最简单的解决问题的方法是重试并再次调用 API。重试可以是您的中间件/API 编排产品处理的一种简单机制。如果记录的性质可以通过.

解耦事务:在抖动的SQL服务器上实现低尾延迟在线事务 (CIDR 2022)

1230 1 2K
这是Pat Helland 的论文:Pat Helland 的 CIDR22 论文,Pat的论文总是非凡的、与众不同的。他们有很多智慧。 问题和范围抖动是指最大延迟与最小延迟的时间差,如最大延迟是20.

使用幂等性抑制API服务中的重复请求 - tkareine

992

将幂等性作为建立 API 设计原则来支持。我在这里选择使用 GraphQL 作为应用层协议,但无论使用其他协议,例如 REST 或 RPC,原理都是相同的。GraphQL 查询操作根据服务器的当前状态.

如何编写幂等的 Bash 脚本?- Arslan

867 3K

您编写了一个 bash 脚本,但由于错误而中途退出,您修复系统中的错误并再次运行脚本。但是脚本中的一半步骤会立即失败,因为它们已经应用于您的系统。要构建弹性系统,您需要编写幂等的软件。 什么是幂等性?.

如何使用SpringBoot的重试功能模块? - Gavin

1088 8K

重试功能是 Spring Batch 模块的一部分。从 2.2.0 开始,此功能从 Spring Batch 中提取出来并作为一个单独的模块进行维护。要在 Spring 应用程序中启用此功能,请将此依.

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

1211 1 2K

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

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

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

如何使POST请求具有幂等性防止重复提交 - mscharhag

4374 1 4K

幂等性是一个积极的 API 特性。它有助于使 API 更具容错性,因为客户端可以在出现连接问题时安全地重试请求。HTTP 规范将 GET、HEAD、OPTIONS、TRACE、PUT 和 DELETE.

Apache Kafak如何处理消息反序列化失败等毒丸现象?

6791 8K

在Kafka的场景下毒丸是:针对Kafka主题生产推入的记录,无论尝试多少次,消费者使用都会失败。因此,毒丸可以有不同的形式: 记录已损坏(我自己从未使用Kafka遇到过此问题) 反序列化失败 主题的.

Apache Kafka和Spring Boot的容错和可靠消息传递 – Arnold Galovics

3354 3 26K

在过去的几年中,Kafka已经开始大幅增加其市场份额。除了微服务和消息传递之外,还有一种已经开始流行的架构模式:事件溯源。Kafka提供了架构模式所需的属性,因此非常适合事件采购。事件源中的关键概念之.

Apache Kafka消息传递精确正好一次的含义 | TechMyTalk

2181 1 2K

在分布式环境中,故障是很常见的情况,可以随时发生。在Kafka环境中,消息代理可能会崩溃,网络故障,处理故障,发布消息时失败或无法使用消息等。这些不同的情况导致了不同类型的数据丢失和重复。失败场景 A.

如何应对Akka集群出现脑裂故障?- Andrzej

3378 2 7K

Akka Cluster是一款非常不错的软件。如果正确使用并用于正确的用例,它可以解决可扩展的分布式系统世界中的许多难题。它可以为您提供一种分布式共识机制,在此基础上,您可以实现Akka Persis.

经验分享:如何重新再处理Apache Kafka的消息事件? -Tinkoff

2415 1 6K
在外部系统之一不可用的情况下进行事件重新处理是我们业务流程的重要组成部分。希望有这样一个重试机制:如果任何外部系统暂时不可用,该应用程序可以让我们重新处理消息。卡夫卡之前在项目的早期,我们使用IBM .

HTTP有哪些保证幂等性和安全性的方法? - mscharhag

3144

幂等性和安全性是HTTP方法的属性。在HTTP RFC定义了这些特性,并告诉我们哪些HTTP方法是安全的和幂。服务器应用程序应确保正确执行安全和幂等的语义,如客户端期望的那样。安全的HTTP方法如果H.

哪些API最佳实践表示您很讨厌客户?- ACM Queue

2251 1 5K

您是否对客户不屑一顾?您希望他们会消失吗?当您与客户互动时,您是在默默地幻想着他们转向竞争对手的产品吗?简而言之,您讨厌客户吗?也许您应该尝试使用公司的外部API来表示不屑。什么?你怎么能做到这一点?.