Dojo
话题
新佳
订阅
极道
元认知
元逻辑
元设计
元编程
元语言
限速与重试指南
如何使POST请求具有幂等性防止重复提交 - mscharhag
幂等性是一个积极的 API 特性。它有助于使 API 更具容错性,因为客户端可以在出现连接问题时安全地重试请求。HTTP 规范将 GET、HEAD、OPTIONS、TRACE、PUT 和 DELETE 方法定义为幂等的。这些方法中的 GET、PUT 和 DELETE 是 REST A
Feign Reactive:访问REST API的首选
这是关于如何为第三方 API 集成实现 Feign Reactive 的分步指南。使用Feign Reactive而不是W
使用幂等key实现可重试的幂等性API设计 - yeng
今天,没有人能保证你构建的微服务不会遇到麻烦。当问题发生时,我们通常希望最简单的解决问题的方法是重试并再次调用 API。 重试可以是您的中间件/API 编排产品处理的一种简单机制。如果记录的性质可以通过主键之类的东西优雅地管理重复,那么这样做的挑战
Airbnb在分布式支付系统中如何避免双重支付?
Airbnb一直在将其基础架构迁移到面向服务的架构(“SOA”)。SOA 提供了许多优点,例如支持开发人员专业化和更快迭代的能力。但是,它也给计费和支付应用程序带来了挑战,因为它使维护数据完整性变得更加困难。对服务的 API 调用对下游服务进行进一步的 API 调用,其中每个服务更改状态并可
ulid/spec: 全局唯一标识符ULID是传统UUID的替代
ULID 是 UUID 的替代品。它是可排序的并且基于时间戳+随机种子。有多种语言的实现可用。 Shopify从UUID切换到ULID,INSERT提升50%,以下是他们经验: 分布式系统使用不可靠的网络
JVM上容错库的初步比较 - frankel
如果您正在实施微服务,那么您很可能正在调用 HTTP 端点。使用 HTTP 调用,很多事情都可能出错。经验丰富的开发人员对此进行计划并进行设计,而不仅仅是快乐的道路。一般来说,容错包括以下特征: 重试 暂停 断路器 倒退 速率限制器以避免服务器
Kotlin和Java简单的重试代码 - Vlad
这是您无需任何其他库或代码依赖项即可重试部分代码的方式。如果需要更复杂的东西,推荐使用Resilience4j库,因为它提供了其他即
使用Spring Boot重试失败编写一个反向代理 - Ashrith
在这个微服务世界中,我们总是强调通过 API/服务网关层传递任何 HTTP 请求,该层连接多个微服务,并有一个最低要求,即记录每个服务的所有请求和响应以获得更清晰的可见性。我们可以考虑在以下场景中编写我们的反向代理层。 1.假设具有API服务像“PHP”或“Pytho
亚马逊认为在分布式系统中必须避免使用回退
在分布式系统领域,回退策略是最难应对的挑战之一,对于时间敏感的服务来说尤其如此。更糟糕的是,不良的回退策略可能需要很长时间(甚至数年)才能产生影响,而优质策略与不良策略之间的差异并不明显。本文将重点讲述回退策略如何导致更多问题,且问题的出现速度比修复速度更快。我们将提供一些示例,说明回退策略
远程调用的容错模式 - pragmatists
我们生活在一个不完美的世界里,失败是不可避免的。我们依赖的系统迟早会失败。我们无法采取任何措施来阻止它,但我们有能力减轻级联故障。我们只需要在我们的工具箱中添加一些工具。 超时必须了解任何资源池都可能耗尽,我们的责任是防止这种情况发生
Udemy在Apache Kafka上引入热重试和冷重试
Udemy Payments Team中关于如何使用 Apache Kafka 的非阻塞重试来构建容错事件传递系统的概述Udemy 平台上有超过 4600 万学生和 64400 万课程注册,每天都有许多用户通过结帐流程来访问内容。这会产生大量流量,同时也会导致许多支付
Apache Kafka重试和维护重试事件的顺序
重试非常重要,尤其是在微服务系统中,这些服务必须经常协作才能处理请求。如果一个服务只中断了几秒钟会发生什么?其他服务应该在放弃之前向客户抛出错误或重试多次。举个简单的例子:通过http链式调用的服务:
大规模分布式系统中的级联故障 - stuttgart
对谷歌、亚马逊和 Co.等公司来说服务的可靠运行非常重要,但它们的系统一次又一次地出现故障,导致大量中断和糟糕的客户体验。人们经常会遇到所谓的级联 故障,导致超出普通系统故障的不良并发症。即使是在线业务的大玩家,怎么也不能完全避免这种故障呢?您可以为自己的系统使用哪些切实可行
如何使用SpringBoot的重试功能模块? - Gavin
重试功能是 Spring Batch 模块的一部分。从 2.2.0 开始,此功能从 Spring Batch 中提取出来并作为一个单独的模块进行维护。要在 Spring 应用程序中启用此功能,请将此依赖项包含到您的 maven pom.xml 中。
探索 Kafka Producer 的内部结构 - Alex
Adobe Experience Platform Pipeline是一个低延迟、基于 Kafka 的流系统。管道连接数百个 Adobe 组件和系统。我们的 Kafka 集群处理310B msg/天,300 TB/天的 IN和920 TB/天的 OUT流量。因此,了解 Kafka 客户端
使用幂等性抑制API服务中的重复请求 - tkareine
将幂等性作为建立 API 设计原则来支持。我在这里选择使用 GraphQL 作为应用层协议,但无论使用其他协议,例如 REST 或 RPC,原理都是相同的。GraphQL 查询操作根据服务器的当前状态返回数据。预计随着时间的推移请求具有特定输入的查询可能会返回不同的数据作为输
分布式系统中的内存限速器 - ajin
在多台服务器分布在世界各地不同地区的情况下,为每台服务器实施速率限制器将导致两个主要问题: 不一致 竞争条件 在本文中,我们将探讨这两个主要问题,以及我们如何实施更好的策略来解决分布式系统的
在分布式系统中通过客户端库包提高可用性
在客户端应用程序中设置一个库,我们可以一致地处理故障,从而提高系统的感知可用性。在开发在我们自己的公司内部或外部使用的 API 时,除了记录和公开端点之外,我们还可以选择交付客户端库。这种方法对用户有很多好处:更容易实现(有时它甚至是单线),更容易迁移(通常只是增加一个依赖版本),并
上页
下页