restapi-pipeline

command
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 2, 2026 License: MPL-2.0 Imports: 8 Imported by: 0

Documentation

Overview

samples/restapi-pipeline/main.go

Demonstra execução concorrente e sequencial de chamadas HTTP usando FanOut e Pipeline com dependências (DAG).

Cenário: montar um resumo de pedido de e-commerce

Grafo de dependências:

Wave 0 (paralelo, sem dependências):
  ├── "user"     → GET /users/:id
  ├── "catalog"  → GET /posts?limit=5
  └── "rates"    → GET /todos?limit=3

Wave 1 (paralelo, dependem de "user"):
  ├── "orders"   → GET /posts?userId=:user.id
  └── "payments" → GET /comments?postId=:user.id

Wave 2 (depende de "orders" + "catalog"):
  └── "summary"  → POST /posts (payload enriquecido)

Resultado: 3 ondas sequenciais, cada onda 100% paralela internamente. Tempo total ≈ max(wave0) + max(wave1) + max(wave2) — em vez de soma de todos.

Usa JSONPlaceholder como backend real para chamadas de rede verdadeiras.

Variáveis de ambiente:

API_BASE_URL  (default: https://jsonplaceholder.typicode.com)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL