@aws-sdk/util-retry

中文文档
3.374.0发布于 2023/07/21Apache-2.0TypeScriptESM + CJS近 30 天下载 260.5万

共享重试用于中件包的公用设备 .

此软件包已被标记为弃用

This package has moved to @smithy/util-retry

中文使用文档
文档目录6 节
  1. 使用量
  2. 默认
  3. 最大尝试
  4. 最大尝试和后置计算
  5. 最大尝试和重试策略
  6. 进一步定制

@aws- sdk/ util- retrich (中文(简体) )

NPM version NPM downloads

该套装为复习提供共享公用事业.

使用量

默认

默认情况下,每个客户端已经有一个默认重试策略. 默认重试计数为 3,并且 只有可重试的错误才会被重试.

AWS 文档: 重试行为。 。 。 .

import { S3Client } from "@aws-sdk/client-s3";

const client = new S3Client({}); // default retry strategy included.

最大尝试

如果你想改变尝试的次数,你可以提供 maxAttempts 客户端创建时的配置 .

import { S3Client } from "@aws-sdk/client-s3";

const client = new S3Client({ maxAttempts: 4 });

建议这样做的原因是: StandardRetryStrategy 包括后退计算, 决定是否应该重试一个错误,以及重试一个符号计数器.

最大尝试和后置计算

如果您想要更改尝试次数并使用自定义延迟 计算,您可以使用 ConfiguredRetryStrategy 从 @aws-sdk/util-retry。 。 。 .

import { S3Client } from "@aws-sdk/client-s3";
import { ConfiguredRetryStrategy } from "@aws-sdk/util-retry";

const client = new S3Client({
  retryStrategy: new ConfiguredRetryStrategy(
    4, // max attempts.
    (attempt: number) => 100 + attempt * 1000 // backoff function.
  ),
});

这个例子将后退设定为每次尝试100ms+1s.

最大尝试和重试策略

如果你同时提供 maxAttempts 财务报告和审定财务报表 retryStrategy,则 retryStrategy 将 获得优先,因为它更具体.

import { S3Client } from "@aws-sdk/client-s3";
import { ConfiguredRetryStrategy } from "@aws-sdk/util-retry";

const client = new S3Client({
  maxAttempts: 2, // ignored.
  retryStrategy: new ConfiguredRetryStrategy(
    4, // used.
    (attempt: number) => 100 + attempt * 1000 // backoff function.
  ),
});

进一步定制

您可以执行 RetryStrategyV2 接口.

https://github.com/aws/aws-sdk-js-v3/blob/main/packages/types/src/retry.ts

版本与发布记录

@aws-sdk/util-retry 共发布 32 个版本,首次发布于 2022/12/02;过去 12 个月发布了 0 个版本。

版本发布日期距今
3.374.0latest2023/07/213 年前
3.370.02023/07/143 年前
3.369.02023/07/113 年前
3.364.02023/07/013 年前
3.362.02023/06/293 年前
3.357.02023/06/223 年前

关于 @aws-sdk/util-retry 的常见问题

@aws-sdk/util-retry 是什么?

共享重试用于中件包的公用设备 .注意:该包已被作者标记为弃用——This package has moved to @smithy/util-retry

如何安装 @aws-sdk/util-retry?

在项目目录运行 npm install @aws-sdk/util-retry,或使用 pnpm add / yarn add / bun add。

@aws-sdk/util-retry 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@aws-sdk/util-retry 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@aws-sdk/util-retry 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >= 14.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@aws-sdk/util-retry 可以商用吗?

@aws-sdk/util-retry 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@aws-sdk/util-retry 的下载量有多少?

根据 npm 官方下载统计,@aws-sdk/util-retry 在 2026/10/08 – 2026/11/06 这 30 天内被下载 2,605,111 次,日均约 86,837 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@aws-sdk/util-retry 还在维护吗?

最新版本 3.374.0 发布于 2023/07/21(3 年前);至今共发布 32 个版本,其中过去 12 个月发布了 0 个;首次发布于 2022/12/02。作者已将其标记为弃用,新项目建议寻找替代方案。