generated from amazon-archives/__template_MIT-0
-
Notifications
You must be signed in to change notification settings - Fork 1k
Expand file tree
/
Copy pathexample-pattern.json
More file actions
70 lines (70 loc) · 2.91 KB
/
example-pattern.json
File metadata and controls
70 lines (70 loc) · 2.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
"title": "Webhook Receiver with AWS Lambda durable functions - NodeJS",
"description": "This serverless pattern demonstrates building a webhook receiver using AWS Lambda durable functions with automatic checkpointing and fault tolerance, implemented in Node.js",
"language": "Node.js",
"level": "200",
"framework": "AWS SAM",
"services": ["apigateway","lambda", "dynamoDB"],
"introBox": {
"headline": "How it works",
"text": [
"This pattern demonstrates a serverless webhook receiver using AWS Lambda durable functions. When a webhook POST request arrives via API Gateway, it triggers a durable function that processes the webhook in 3 checkpointed steps: Validate → Process → Finalize. Each step is automatically checkpointed, allowing the workflow to resume from the last successful step if interrupted. The pattern provides immediate 202 response while processing continues in the background, stores execution state in DynamoDB with TTL, and offers real-time status tracking via a REST API."
]
},
"testing": {
"headline": "Testing",
"text": [
"See the GitHub repo for detailed testing instructions."
]
},
"cleanup": {
"headline": "Cleanup",
"text": [
"Delete the stack: <code>sam delete</code>."
]
},
"deploy": {
"text": [
"sam build",
"sam deploy --guided"
]
},
"gitHub": {
"template": {
"repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-durable-webhook-sam-nodejs",
"templateURL":"serverless-patterns/lambda-durable-webhook-sam-nodejs",
"templateFile": "template.yaml",
"projectFolder": "lambda-durable-webhook-sam-nodejs"
}
},
"resources": {
"headline": "Additional resources",
"bullets": [
{
"text": "AWS Lambda durable functions Documentation",
"link": "https://docs.aws.amazon.com/lambda/latest/dg/durable-functions.html"
},
{
"text": "Event Source Mappings with Lambda durable functions",
"link": "https://docs.aws.amazon.com/lambda/latest/dg/durable-invoking-esm.html"
},
{
"text": "Lambda durable functions Best Practices",
"link": "https://docs.aws.amazon.com/lambda/latest/dg/durable-functions-best-practices.html"
},
{
"text": "Node.js AWS SDK Documentation",
"link": "https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/"
}
]
},
"authors": [
{
"name": "Sahithi Ginjupalli",
"image": "https://drive.google.com/file/d/1YcKYuGz3LfzSxiwb2lWJfpyi49SbvOSr/view?usp=sharing",
"bio": "Cloud Engineer at AWS with a passion for diving deep into cloud and AI services to build innovative serverless applications.",
"linkedin": "ginjupalli-sahithi-37460a18b",
"twitter": ""
}
]
}