---
title: "O desenvolvimento da Origin era prejudicado por estados inconsistentes e erros de RPC"
description: "Origin é um protocolo de marketplaces de economia compartilhada que usa Ethereum e IPFS."
---

# O desenvolvimento da Origin era prejudicado por estados inconsistentes e erros de RPC

<ImageBlock
  src="https://media.alchemy.com/1703096803-origin-hero.png"
  alt="Hero do estudo de caso da Origin Protocol"
  width={2000}
  height={1330}
  priority
/>

<StatsCardDeck
  items={[
    { title: "413K+", description: "Daily queries" },
    { title: "880 Hours", description: "Saved per month" },
    { title: "Zero", description: "Errors" },
  ]}
/>

> Alchemy é confiável e isso é fundamental para nós como engenheiros.
>
> — Mike Shultz, Origin Developer

## Resumo

Como muitas equipes de blockchain, a Origin está construindo um protocolo que depende do envio bem-sucedido de ordens para a blockchain e de se manter atualizada sobre o estado da blockchain.

Eles costumavam depender de um provedor de infraestrutura repleto de erros de consistência. Ao longo do caminho, a Origin percebeu que precisava urgentemente ou gastar alguns meses construindo peças para tornar aquele sistema funcional, ou encontrar uma nova solução.

Quanto antes consertassem sua infraestrutura, mais cedo poderiam reduzir o tempo dos engenheiros depurando dados não confiáveis diariamente. Hoje a Origin está focada em seu protocolo, utilizando a infraestrutura de próxima geração da Alchemy para consultar a blockchain e obter informações de estado confiáveis.

## Erros de RPC e depuração consumiam tempo

A Origin originalmente usava um provedor de infraestrutura diferente, cheio de estado inconsistente e erros de RPC. Nem todas as requisições pareciam ir para servidores alinhados entre si.

Por exemplo, um node responderia a uma requisição, mas esse node estava alguns blocos atrás de um node diferente que respondeu outra requisição. Esses problemas estranhos de estado eram praticamente impossíveis de investigar até que descobrissem o problema específico, e então o viam em todos os lugares.

## Estado inconsistente afetava usuários de formas inesperadas

Problemas de estado inconsistente eram muito piores de depurar do que erros de RPC. Em muitas ocasiões, um usuário relatava um problema e a Origin gastava tempo depurando só para descobrir que o node havia enviado uma resposta ruim.

Por exemplo, a Origin via um evento acontecer, verificava a mudança de estado e então via que o estado não havia sido atualizado. As informações de estado inconsistentes significavam que os usuários finais viam dados inválidos ou que seus lances ou ofertas nunca chegavam ao marketplace.

## Redução significativa nos problemas de estado

A Origin chegou a um ponto em que precisava urgentemente tomar uma decisão—ou se comprometer a passar os próximos meses construindo correções para fazer a infraestrutura existente funcionar, como construir uma camada de cache, ou encontrar outra solução.

Franck Chastagnol, da Origin, ouviu avaliações muito positivas sobre a Alchemy, então convenceu o resto da equipe a testar o novo serviço. Primeiro, implantaram a Alchemy em todo o staging da Origin. Agora usam a Alchemy em todos os produtos de nível de produção da Origin.

> A Alchemy economizou quantidades muito significativas de tempo da Origin e mudou a experiência do usuário final para melhor.
>
> — Franck Chastagnol, Origin

A Origin passou de ver um problema todo santo dia para agora ver apenas problemas temporários ocasionais. Para seus engenheiros, a maior vantagem de mudar para a Alchemy foi ter o estado entre as requisições sendo preciso. A consistência relativa do estado é difícil de investigar e faz uma grande diferença quando você recebe os dados corretos de volta. Os usuários finais não têm mais erros bizarros e os engenheiros podem gastar tempo desenvolvendo a Origin.

## Suporte ao cliente de alto nível

Problemas de estado inconsistente agora acontecem apenas ocasionalmente e só temporariamente. Se a Origin vê um problema, pergunta à equipe da Alchemy, que responde rapidamente para investigar o problema. Clientes VIP têm uma linha direta de comunicação com os engenheiros que constroem a Alchemy. A equipe da Alchemy resolve os problemas imediatamente ou ajuda a Origin a descobrir como corrigir seu código.

## Ferramentas de desenvolvedor úteis para depuração e alertas

Em relação a outros produtos da Alchemy, a Origin verifica a atualização diária de analytics como uma checagem de sanidade e ferramenta de alerta para bugs que talvez não capturassem de outra forma. Capturar esses bugs cedo pode indicar comportamento ruim de relayers ou outras dependências antes que os problemas se tornem mais difíceis de gerenciar.

## O serviço principal que a Alchemy oferece é o melhor

A Alchemy economizou quantidades muito significativas de tempo da Origin e mudou a experiência do usuário final para melhor. Eles continuam impressionados com a capacidade de resposta do suporte, mas gostam mais das soluções principais. A Alchemy é confiável e isso é fundamental para a Origin como engenheiros.
