AWs Step Function Task and Parallel State explanation

Veröffentlicht am: 10 April 2022
auf dem Kanal: AshishBurman
873
10

Here I have explained how AWS Step function works and some of its use cases. Also Explained how Task and parallel State works and input between states.

Code for Parallel -
{
"Comment": "A description of my state machine",
"StartAt": "Parallel",
"States": {
"Parallel": {
"Type": "Parallel",
"Branches": [
{
"StartAt": "Lambda 1",
"States": {
"Lambda 1": {
"Type": "Task",
"Resource": "arn:aws:states:::lambda:invoke",
"OutputPath": "$.Payload",
"Parameters": {
"Payload.$": "$",
"FunctionName": "Lambda ARN"
},
"Retry": [
{
"ErrorEquals": [
"Lambda.ServiceException",
"Lambda.AWSLambdaException",
"Lambda.SdkClientException"
],
"IntervalSeconds": 2,
"MaxAttempts": 6,
"BackoffRate": 2
}
],
"End": true
}
}
},
{
"StartAt": "Lambda 2",
"States": {
"Lambda 2": {
"Type": "Task",
"Resource": "arn:aws:states:::lambda:invoke",
"OutputPath": "$.Payload",
"Parameters": {
"Payload.$": "$",
"FunctionName": "Lambda ARN"
},
"Retry": [
{
"ErrorEquals": [
"Lambda.ServiceException",
"Lambda.AWSLambdaException",
"Lambda.SdkClientException"
],
"IntervalSeconds": 2,
"MaxAttempts": 6,
"BackoffRate": 2
}
],
"End": true
}
}
}
],
"Next": "Lambda 3"
},
"Lambda 3": {
"Type": "Task",
"Resource": "arn:aws:states:::lambda:invoke",
"OutputPath": "$.Payload",
"Parameters": {
"Payload.$": "$",
"FunctionName": "Lambda ARN"
},
"Retry": [
{
"ErrorEquals": [
"Lambda.ServiceException",
"Lambda.AWSLambdaException",
"Lambda.SdkClientException"
],
"IntervalSeconds": 2,
"MaxAttempts": 6,
"BackoffRate": 2
}
],
"End": true
}
}
}
----------------------------------------------------------------

Code for Sequential -
{
"Comment": "A Test step function with 2 lambda call ",
"StartAt": "Lambda1",
"States": {
"Lambda1": {
"Type": "Task",
"InputPath": "$",
"ResultPath": "$.taskresult",
"Resource": "Lambda ARN",
"Next": "Lambda2"
},
"Lambda2": {
"Type": "Task",
"InputPath": "$",
"ResultPath": "$.taskresult",
"Resource": "Lambda ARN",
"End": true,
"TimeoutSeconds": 20
}
}
}

-----------------------------------------------------------------------------------------

String accessKey = ""
String secretKey = ""
String EmailServiceStepFunctionARN = "arn:aws:states:us-east-2:417434344042:stateMachine:TestStateMachine"
Regions region = Regions.fromName("us-east-2")
UUID uuid = UUID.randomUUID();
String uuidValue = uuid.toString();
BasicAWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
AWSStepFunctions sfnClient = AWSStepFunctionsClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.withRegion(region)
.build();
StartExecutionRequest executionRequest = new StartExecutionRequest();

Map input = [:]
input.message = "test String"
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(input);
executionRequest.setInput(json)
executionRequest.setName(uuidValue);
executionRequest.setStateMachineArn(EmailServiceStepFunctionARN)

StartExecutionResult result = sfnClient.startExecution(executionRequest);
println(result.toString())


Auf dieser Seite können Sie das Online-Video AWs Step Function Task and Parallel State explanation mit der Dauer stunde minuten sekunde in guter Qualität ansehen, das der Benutzer AshishBurman 10 April 2022 hochgeladen hat, den Link mit Freunden und Bekannten teilen, dieses Video wurde auf Youtube bereits 873 Mal angesehen und es wurde von 10 den Zuschauern gefallen. Viel Spaß beim Betrachtenden Zuschauern gefallen!