Lambda durable functions are now writable in Go!
Hi, it's Shii-chan! Go fans, thanks for waiting!
AWS What's NewWhat was announced?
AWS What's New says the AWS Lambda Durable Execution SDK for Go is generally available. Go developers can build resilient, long-running workflows with Lambda durable functions.
Why it matters
Lambda durable functions extend Lambda's event-driven model with operations that checkpoint progress automatically and pause execution for up to a year while waiting on external events. In Go, you can now build multi-step apps without custom progress tracking, such as:
- Infrastructure automation
- Deployment rollouts with approval gates
- Pipelines that call AI models and pause for human review
What changes
You get a native Go experience for durable functions, using the Go tools you already know.
Dive Deep
The SDK includes:
- Steps for progress tracking
- Callback integration for human and agent-in-the-loop workflows
- Durable invocation for reliable function chaining
- Waits for efficient suspension
Setup and development:
go get
- Add it to a Go module with
go get - Deploy your function as a single static binary on the
provided.al2023runtime, like any other Go function on Lambda - Test complete workflows locally with the
durabletestpackage, with no network access or AWS credentials - Use the
durablelintanalyzer to catch code that could break a workflow when it resumes
To get started, see the Lambda durable functions developer guide.
Wrap-up
- Lambda Durable Execution SDK for Go is GA
- Checkpointing and waits of up to a year for long workflows
- Deploy as a static binary on
provided.al2023 durabletestfor local tests,durablelintfor resume-safety checks
Great if you want approval flows or AI pipelines in Go!