Restate: Um mecanismo de execução durável sem banco de dados

2025-03-27
Restate: Um mecanismo de execução durável sem banco de dados

Restate é um mecanismo de execução durável recém-construído que não requer banco de dados ou sistema de log. Construído a partir de princípios básicos, ele possui uma pilha completa e autônoma centrada em um log de comandos e um processador de eventos, competindo com os melhores logs em termos de durabilidade e operações. Este artigo detalha os aspectos da arquitetura do Restate, incluindo suas conexões de serviço bidirecionais, modelo de dimensionamento particionado, armazenamento de estado incorporado do RocksDB e abstração de log virtual. O Restate equilibra habilmente baixa latência e alta durabilidade por meio do design de log e estratégia de camadas de armazenamento, suportando SDKs em várias linguagens de programação.

Leia mais
Desenvolvimento

Restate: Simplificando fluxos de trabalho complexos de jogos de IA

2025-03-10
Restate: Simplificando fluxos de trabalho complexos de jogos de IA

Este artigo demonstra como construir um jogo de aventura de texto interativo a partir de um único prompt do usuário usando a estrutura Restate. O aplicativo coordena a geração de imagens, a síntese de áudio e várias chamadas de modelos de linguagem grandes, tarefas que tradicionalmente exigem filas de mensagens complexas e tratamento de erros. O Restate simplifica isso com manipuladores duráveis e primitivas de concorrência integradas, fornecendo repetições automáticas, gerenciamento de estado e execução de solicitações garantida. O autor detalha a arquitetura do aplicativo, a implementação do código e as soluções de desafios, mostrando como o Restate lida de forma eficiente com fluxos de trabalho de longa duração e melhora a produtividade do desenvolvedor.

Leia mais
Jogos

Adeus à Coordenação Distribuída: Como o Restate Simplifica Aplicativos Distribuídos com um Único Log

2025-01-24
Adeus à Coordenação Distribuída: Como o Restate Simplifica Aplicativos Distribuídos com um Único Log

Construir aplicativos distribuídos resilientes continua sendo um grande desafio. Os desenvolvedores geralmente gastam muito tempo tratando de estratégias de failover, retransmissões, condições de corrida e outras complexidades. Este artigo apresenta o Restate, uma nova abordagem que simplifica o desenvolvimento, evitando a coordenação distribuída. A ideia central é tratar todos os sistemas (filas de mensagens, bancos de dados, serviços de bloqueio, etc.) como um único log. Cada operação é registrada neste log, e as retransmissões leem automaticamente os registros de operações anteriores, evitando inconsistências e condições de corrida. O Restate é um projeto de código aberto baseado neste princípio, simplificando o desenvolvimento e a manutenção de aplicativos distribuídos e melhorando a confiabilidade do sistema.

Leia mais
Desenvolvimento