Motor de workflows duráveis que executa funções por etapas, tarefas em segundo plano e workflows de IA em serverless, servidores ou edge, com novas tentativas e controle de fluxo.
restatedev/restate
Restate é um runtime para criar aplicações resilientes com execução durável, troca confiável de mensagens e estado durável, mesmo diante de falhas na infraestrutura.
Alternativa open source a:Temporal
- Estrelas
- 4,591
- Forks
- 226
- Issues abertas
- 471
- Último commit
- há 2 horas
O que é?
Restate é uma plataforma para criar aplicações que continuam funcionando corretamente quando servidores, processos ou redes falham. Ela oferece versões duráveis de componentes comuns, como chamadas de função, promises, timers e estado de chave-valor, permitindo que desenvolvedores escrevam código comum enquanto a plataforma cuida das novas tentativas e da recuperação.
Entre os principais mecanismos estão a execução durável, que tenta novamente o trabalho que falhou sem executar de novo as etapas concluídas, e a comunicação confiável entre serviços com semântica exactly-once para chamadas de solicitação e resposta, mensagens unidirecionais e tarefas agendadas. Cada entidade de serviço tem um estado de chave-valor isolado, persistido junto com o progresso da execução. Handlers de longa duração são suspensos enquanto aguardam uma promise e retomados quando ela é resolvida, o que é adequado para implantações serverless.
O projeto é distribuído como um servidor e uma CLI, com SDKs para TypeScript, Java e Kotlin, Python, Go e Rust. Uma UI e uma CLI permitem inspecionar serviços e invocações, e são gerados traces do OpenTelemetry para as interações entre handlers.
Recursos principais
- 01Execução durável que tenta novamente após falhas sem executar de novo as etapas concluídas
- 02Comunicação exactly-once entre serviços para chamadas, mensagens unidirecionais e tarefas agendadas
- 03Promises e timers duráveis que resistem a falhas e reinicializações
- 04Estado de chave-valor isolado por entidade de serviço, persistido junto com o progresso da execução
- 05SDKs para TypeScript, Java/Kotlin, Python, Go e Rust
- 06UI e CLI para inspecionar invocações, com traces do OpenTelemetry
Casos de uso
- Criar agentes de IA duráveis que precisam retomar a execução após falhas
- Orquestrar microsserviços com novas tentativas confiáveis e lógica de compensação
- Executar workflows-as-code que aguardam timers ou webhooks externos
- Processar eventos de forma confiável em funções serverless
Início rápido
- 1
Instale o servidor via Homebrew
brew install restatedev/tap/restate-server - 2
Instale a CLI via Homebrew
brew install restatedev/tap/restate - 3
Execute o servidor via npx
npx @restatedev/restate-server
Antes de usar
- Os binários pré-compilados são fornecidos apenas para macOS e Linux.
- Não foi possível determinar a licença pelos metadados do projeto.
Tópicos
Perguntas frequentes
- O que é restate?
- Restate é um runtime para criar aplicações resilientes com execução durável, troca confiável de mensagens e estado durável, mesmo diante de falhas na infraestrutura. Restate é uma plataforma para criar aplicações que continuam funcionando corretamente quando servidores, processos ou redes falham. Ela oferece versões duráveis de componentes comuns, como chamadas de função, promises, timers e estado de chave-valor, permitindo que desenvolvedores escrevam código comum enquanto a plataforma cuida das novas tentativas e da recuperação.
- restate é gratuito? Qual é a licença?
- restate é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- restate ainda é mantido?
- Manutenção ativa. O último commit de restate foi em 22 de out. de 2026.
- Para que posso usar restate?
- Criar agentes de IA duráveis que precisam retomar a execução após falhas Orquestrar microsserviços com novas tentativas confiáveis e lógica de compensação Executar workflows-as-code que aguardam timers ou webhooks externos Processar eventos de forma confiável em funções serverless
- Como instalar restate?
- Instale o servidor via Homebrew: brew install restatedev/tap/restate-server Instale a CLI via Homebrew: brew install restatedev/tap/restate Execute o servidor via npx: npx @restatedev/restate-server
- Onde consigo restate?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/restatedev/restate
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Engine de execução durável e open source para orquestrar microsserviços, agentes de IA e grafos de workflows adaptativos, com workers em várias linguagens.
Temporal é uma plataforma de execução durável cujo servidor executa workflows de aplicações e tenta novamente, de forma automática, as etapas que falham.
Um mecanismo de orquestração para tarefas em segundo plano, agentes de IA e workflows duráveis, com SDKs para Python, TypeScript, Go e Ruby e Postgres como camada de durabilidade.
Framework de modelo de atores para Go, inspirado em Erlang/OTP, para criar sistemas distribuídos supervisionados e transparentes à rede.
Implementação Java do Apache Dubbo, um framework de RPC e microsserviços para comunicação, descoberta e gerenciamento de tráfego entre serviços.