Go e Temporal: Workflows Resilientes e Duráveis

Construa workflows resilientes com Temporal em Go. Aprenda about retries, sagas, signals e padrões de orquestração de processos distribuídos.

Go e Temporal: Workflows Resilientes e Duráveis

Temporal é uma plataforma de orquestração de workflows que permite criar processos de negócio resilientes, duráveis e escaláveis. Desenvolvido pelos criadores do Cadence (Uber), é amplamente adotado por empresas como Netflix, Stripe e Shopify.

Neste guia, você aprenderá a construir workflows complexos em Go com garantias de execução, retries automáticos e compensação (Saga pattern).

Índice

  1. Conceitos Fundamentais
  2. Configuração do Ambiente
  3. Primeiro Workflow
  4. Activities e Retries
  5. Saga Pattern
  6. Signals e Queries
  7. Timers e Cron Jobs
  8. Padrões Avançados

Conceitos Fundamentais

Arquitetura Temporal

┌─────────────────────────────────────────────────────────────┐
│                   Temporal Server                          │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  Frontend    │  │   History    │  │   Matching   │      │
│  │   (gRPC)     │  │   (Events)   │  │   (Tasks)    │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
│                                                             │
│  Persistence: PostgreSQL / MySQL / Cassandra / Elasticsearch│
└─────────────────────────────────────────────────────────────┘
           │ gRPC
┌─────────────────────────────────────────────────────────────┐
│                   Workers (Go)                             │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │   Workflow   │  │   Activity   │  │   Activity   │      │
│  │   Engine     │  │   Executor   │  │   Executor   │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
│                                                             │
│  Workflows são determinísticos (replayable)                │
│  Activities contêm side-effects (I/O, APIs)                │
└─────────────────────────────────────────────────────────────┘

Conceitos Chave

Workflows: Funções Go que definem a lógica de negócio. São determinísticas e podem ser “replayed” indefinidamente.

Ler mais →