AWS.Lambda.Powertools.Idempotency 1.2.1
前缀已保留
dotnet add package AWS.Lambda.Powertools.Idempotency --version 1.2.1
NuGet\Install-Package AWS.Lambda.Powertools.Idempotency -Version 1.2.1
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用了 NuGet 模块的 Install-Package 版本。
<PackageReference Include="AWS.Lambda.Powertools.Idempotency" Version="1.2.1" />
对于支持 PackageReference 的项目,将此 XML 节复制到项目文件中以引用包。
paket add AWS.Lambda.Powertools.Idempotency --version 1.2.1
NuGet 团队不为本客户端提供支持。请联系其 维护者 以获得支持。
#r "nuget: AWS.Lambda.Powertools.Idempotency, 1.2.1"
#r 指令可用于 F# Interactive 和多语言笔记本。将此复制到交互式工具或脚本的源代码中,以引用包。
// Install AWS.Lambda.Powertools.Idempotency as a Cake Addin #addin nuget:?package=AWS.Lambda.Powertools.Idempotency&version=1.2.1 // Install AWS.Lambda.Powertools.Idempotency as a Cake Tool #tool nuget:?package=AWS.Lambda.Powertools.Idempotency&version=1.2.1
NuGet 团队不为本客户端提供支持。请联系其 维护者 以获得支持。
AWS Lambda Idempotency for .NET
幂等性包提供了一种将 Lambda 函数转换为幂等方法,以便安全地重试的简单解决方案。
术语
幂等的性质意味着如果以相同的输入参数调用多次操作,则操作不会产生额外的副作用。
幂等操作会在多次调用时以相同的参数返回相同的结果。这使幂等操作可以安全地重试。了解更多关于幂等性的 信息。
幂等性键 是整个事件或配置的事件子集的散列表示,调用结果被 JSON 序列化 并存储在持久化存储层中。
关键特性
- 防止Lambda处理函数在时间窗口内对同一事件有效负载执行多次
- 确保Lambda处理函数在收到相同有效负载时返回相同的结果
- 使用 JMESPath 表达式选择事件子集作为幂等性键
- 为具有相同负载的记录设置一个时间窗口,这些记录应被视为重复项
- 如果 Lambda 函数在执行过程中超时,则终止正在进行的执行
读取文档
有关功能列表的完整信息,请访问 docs.powertools.aws.dev/lambda/dotnet/utilities/idempotency/
GitHub: https://github.com/aws-powertools/powertools-lambda-dotnet/
安装
您应该使用 NuGet 进行安装
Install-Package Amazon.Lambda.PowerTools.Idempotency
或者通过 .NET Core 命令行界面
dotnet add package Amazon.Lambda.PowerTools.Idempotency
示例函数
public class Function
{
public Function()
{
Idempotency.Configure(builder => builder.UseDynamoDb("idempotency_table"));
}
[Idempotent]
public Task<string> FunctionHandler(string input, ILambdaContext context)
{
return Task.FromResult(input.ToUpper());
}
}
产品 | 版本 兼容及额外的计算目标框架版本。 |
---|---|
.NET | net6.0 兼容。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 兼容。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
-
net6.0
- Amazon.Lambda.Core (>= 2.2.0)
- AspectInjector (>= 2.8.1)
- AWSSDK.DynamoDBv2 (>= 3.7.301.18)
-
net8.0
- Amazon.Lambda.Core (>= 2.2.0)
- AspectInjector (>= 2.8.1)
- AWSSDK.DynamoDBv2 (>= 3.7.301.18)
NuGet 包
此包未由任何 NuGet 包使用。
GitHub 仓库 (1)
显示依赖 AWS.Lambda.Powertools.Idempotency 的最受欢迎的前 1 个 GitHub 仓库
仓库 | 星级 |
---|---|
aws-powertools/powertools-lambda-dotnet
Powertools 是一个开发者工具包,用于实现无服务器最佳实践并提高开发速度。
|
版本 | 下载 | 最后更新 |
---|---|---|
1.2.1 | 11,517 | 5/9/2024 |
1.1.1 | 8,370 | 3/10/2024 |
1.1.0 | 8,958 | 2/16/2024 |
1.0.0 | 7,030 | 11/21/2023 |
0.2.2-preview | 2,566 | 9/19/2023 |
0.1.0-preview | 215 | 8/29/2023 |
0.0.2-preview | 206 | 8/22/2023 |
0.0.1-preview | 611 | 6/21/2023 |