地图状态如何在 AWS Step Functions 中定价?
How are Map states priced in AWS Step Functions?
我发现关于基于输入数组扇出的地图状态的定价文档含糊不清。有谁知道每次扇出是否最终被算作“状态转换”而产生 0.025 美元的成本?这是一个示例输入和状态机定义以供参考。
输入:
{ "data": [
// Is each of these going to be a "state transition"?
{ "name": "a" },
{ "name": "b" },
] }
定义:
{
"StartAt": "Start",
"States": {
"Start": {
"Type": "Map",
"ItemsPath": "$.data",
"End": true,
"Iterator": {
"StartAt": "Monitor",
"States": {
"Monitor": {
"Type": "Task",
"Resource": "some-lambda",
"End": true
}
}
}
}
}
}
Step Functions 状态转换的成本是:
[=11=].000025 PER STATE TRANSITION THEREAFTER
[=11=].025 per 1,000 state transitions
使用 AWS Step Functions,您需要为数字状态转换付费。
那么让我们看看 Map State 会创建多少个状态转换。
AWS Step Functions 仅对以 Entered
结尾的事件向客户收费
对于每个地图状态,我们至少有这 4 个状态转换:
- MapStateEntered(计为状态转换)
- MapStateStarted(未计算在内)
- MapStateSucceeded(未计算在内)
- MapStateExited(未计算在内)
对于地图状态的每次迭代,我们都有这两个状态转换:
- MapIterationStarted(未计算在内)
- MapIterationSucceeded(未计数)
因此对于地图状态,我们可以假设成本定义为:
cost = (1 + iterations * (steps inside iteration) ) * $0.000025
因此对于您的示例(具有 2 次迭代的 Map 状态的执行),Map 状态的开销是:
转换:1+2*1 = 3
费用:3 * 0.000025 = 0.000075 美元
我发现关于基于输入数组扇出的地图状态的定价文档含糊不清。有谁知道每次扇出是否最终被算作“状态转换”而产生 0.025 美元的成本?这是一个示例输入和状态机定义以供参考。
输入:
{ "data": [
// Is each of these going to be a "state transition"?
{ "name": "a" },
{ "name": "b" },
] }
定义:
{
"StartAt": "Start",
"States": {
"Start": {
"Type": "Map",
"ItemsPath": "$.data",
"End": true,
"Iterator": {
"StartAt": "Monitor",
"States": {
"Monitor": {
"Type": "Task",
"Resource": "some-lambda",
"End": true
}
}
}
}
}
}
Step Functions 状态转换的成本是:
[=11=].000025 PER STATE TRANSITION THEREAFTER
[=11=].025 per 1,000 state transitions
使用 AWS Step Functions,您需要为数字状态转换付费。 那么让我们看看 Map State 会创建多少个状态转换。
AWS Step Functions 仅对以 Entered
对于每个地图状态,我们至少有这 4 个状态转换:
- MapStateEntered(计为状态转换)
- MapStateStarted(未计算在内)
- MapStateSucceeded(未计算在内)
- MapStateExited(未计算在内)
对于地图状态的每次迭代,我们都有这两个状态转换:
- MapIterationStarted(未计算在内)
- MapIterationSucceeded(未计数)
因此对于地图状态,我们可以假设成本定义为:
cost = (1 + iterations * (steps inside iteration) ) * $0.000025
因此对于您的示例(具有 2 次迭代的 Map 状态的执行),Map 状态的开销是:
转换:1+2*1 = 3
费用:3 * 0.000025 = 0.000075 美元