shiichan

Lambda durable functions are now writable in Go!

Hi, it's Shii-chan! Go fans, thanks for waiting!

AWS What's New aws.amazon.com

What 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.al2023 runtime, like any other Go function on Lambda
  • Test complete workflows locally with the durabletest package, with no network access or AWS credentials
  • Use the durablelint analyzer 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
  • durabletest for local tests, durablelint for resume-safety checks

Great if you want approval flows or AI pipelines in Go!