Skip to content

Latest commit

 

History

History
49 lines (33 loc) · 5.43 KB

README.md

File metadata and controls

49 lines (33 loc) · 5.43 KB

Go Example Catalog

Prerequisites

  • Go >= 1.21.0

Basics

  • Services - Durable Execution: Making code resilient to failures via automatic retries and recovery of previously finished actions.
  • Durable Building Blocks: Restate turns familiar programming constructs into recoverable, distributed building blocks. Discover what you can do with the SDK.
  • Virtual Objects: Stateful services with access to long-lasting, consistent K/V state.
  • Workflows: Durable sequences of steps that can be queried, signaled and awaited.

Use Cases and Patterns

Communication

Orchestration patterns

  • Sagas: Preserve consistency by tracking undo actions and running them when code fails halfway through.
  • Stateful Actors and State Machines: Stateful Actor representing a machine in our factory. Track state transitions with automatic state persistence.

Scheduling

  • Scheduling Tasks: Restate as scheduler: Schedule tasks for later and ensure the task is triggered and executed.
  • Parallelizing Work: Execute a list of tasks in parallel and then gather their result.

Event processing

Integrations

Examples integrating Restate with other tools and frameworks:

  • AWS Lambda + CDK: Sample project deploying a Go-based Restate service to AWS Lambda using the AWS Cloud Development Kit (CDK).
  • KNative: Deploying Restate services with KNative.

Templates

Starter templates for new projects:

Tutorials

Step-by-step guides to learn Restate: