---
title: "Como configurar um RPC alternativo"
description: "Adicione um Provedor de Node de Backup para Evitar Downtime e Transações Travadas"
---

## O que é uma chamada de procedimento remoto \(RPC\)?

Uma chamada de procedimento remoto \(RPC\) é uma técnica na qual um software consegue se comunicar remotamente com outros sistemas na mesma rede para acessar software ou dados. Na metodologia RPC, um cliente solicita algo \(por exemplo, dados\) e um servidor atende essa solicitação remotamente.

No blockchain, essa tecnologia foi adaptada na forma de [nós RPC](https://www.alchemy.com/overviews/what-is-an-ethereum-node), uma API na qual desenvolvedores blockchain podem interagir com servidores blockchain \(ou seja, nós\). Com isso, desenvolvedores blockchain têm a capacidade de criar software web3 como [apps](https://www.alchemy.com/dapps/top/defi-dapps) que necessitam de nós RPC para se conectar ao blockchain.

Neste artigo, vamos explicar a importância de [usar um provedor de nós blockchain](https://www.alchemy.com/overviews/blockchain-node-providers) e configurar um endpoint RPC alternativo, além dos diversos motivos pelos quais um endpoint RPC alternativo ou de backup é importante.

Além disso, vamos apresentar os diferentes métodos para configurar um endpoint RPC alternativo, caso você queira integrar endpoints RPC alternativos ao seu projeto blockchain atual.

## O que é um endpoint RPC alternativo?

Um endpoint alternativo de chamada de procedimento remoto \(RPC\) é um endpoint de backup para quando o endpoint RPC primário falha ou fica fora do ar. O risco de falha de um endpoint RPC pode significar a falha de milhares ou potencialmente milhões de transações.

Como solução, desenvolvedores começaram a buscar planos de contingência para os casos em que o endpoint RPC primário falha. Uma solução é configurar endpoints RPC alternativos, que funcionam como uma proteção caso um endpoint RPC primário deixe de funcionar corretamente.

Um endpoint RPC alternativo é semelhante a um [endpoint RPC privado](https://www.alchemy.com/overviews/private-rpc-endpoint), que é um endpoint dedicado para uma aplicação ou carteira, mas difere na implementação. Um endpoint RPC alternativo se refere a um backup, enquanto um endpoint RPC privado simplesmente significa um endpoint não público.

## Quando é um bom momento para usar um endpoint RPC alternativo?

Endpoints RPC alternativos têm diversos casos de uso potenciais para desenvolvedores blockchain, desde [endpoints RPC públicos não confiáveis](https://www.alchemy.com/infura-alternative) até a correção de problemas comuns em transações, como dados imprecisos. Nesta seção, vamos abordar algumas das situações comuns em que endpoints RPC alternativos podem ser úteis.

### 1. Seu provedor RPC primário está fora do ar

Um dos principais casos de uso da configuração de um endpoint RPC alternativo é como opção de backup caso o RPC primário fique completamente fora do ar, levando a uma perda de conexão entre o software habilitado para blockchain e o blockchain. Isso pode causar o mau funcionamento temporário de software com tecnologia blockchain caso um RPC alternativo não esteja disponível imediatamente.

Por exemplo, em julho de 2022, houve uma falha em toda a rede do endpoint RPC público da Polygon hospedado pela Ankr, e o Chief Information Security Officer \(CISO\), **Mudit Gupta**, recomendou o uso de um provedor RPC alternativo para Polygon, como a Alchemy, que não estava enfrentando indisponibilidade.

<ImageBlock
  src="https://media.alchemy.com/1704096781-mudit-gupta-tweet.png"
  alt="A Polygon recomendou a troca para a Alchemy quando o provedor de RPC público, Ankr, foi sequestrado em julho de 2022."
  width={600}
  height={504}
  caption="A Polygon recomendou a troca para a Alchemy quando o provedor de RPC público, Ankr, foi sequestrado em julho de 2022."
/>

### 2. As transações não estão passando pelo seu provedor RPC primário

Outra aplicação importante de endpoints RPC alternativos é como opção de backup caso o endpoint RPC primário esteja congestionado ou lento, causando atrasos nas transações. Isso pode ser particularmente prejudicial para apps que dependem fortemente de comunicação instantânea com o blockchain.

Antes de escolher um provedor de backup, compare os dados atuais de latência e taxa de sucesso nos [benchmarks de provedores RPC](https://www.alchemy.com/benchmarks) da Alchemy.

Quando as transações falham, usar um endpoint RPC alternativo pode ser uma boa opção de backup para garantir que a experiência do usuário web3 não seja prejudicada por nós instáveis.

### 3. Os dados do seu provedor RPC primário não são precisos

Como blockchains são sistemas globalmente distribuídos, [alguns provedores de nós retornam dados imprecisos](https://www.alchemy.com/blog/data-accuracy) do blockchain porque sua rede de nós está fora de sincronia com o blockchain público.

Quando a frota de servidores de um provedor de nós fica fora de sincronia, isso leva os usuários a receberem dados imprecisos, como saldos incorretos, NFTs ausentes e, de modo geral, uma experiência de usuário ruim.

Nessa situação, ter endpoints RPC alternativos integrados à sua aplicação blockchain significa ter a opção de alternar facilmente do seu provedor de nós primário para um provedor de nós secundário, de fallback, para evitar o retorno de dados imprecisos.

### 4. Seu provedor RPC primário não é escalável

Por fim, endpoints RPC alternativos podem ser úteis quando seu endpoint RPC primário enfrenta desafios de escalabilidade em períodos de alto tráfego, como um airdrop de tokens, um lançamento de NFT de grande visibilidade ou atividade on-chain incentivada.

Como resultado, um endpoint RPC alternativo pode ser usado para compensar o alto tráfego e evitar que o endpoint RPC primário sofra colapso sob o estresse de escalabilidade.

## 3 formas de lidar com endpoints com falha

Ao lidar com um endpoint RPC com falha, há três formas principais de tentar resolver a situação: tentar a transação novamente no mesmo endpoint, alternar as transações entre uma lista de endpoints RPC, ou trocar seu provedor RPC primário.

### 1. Tentar transações novamente usando o mesmo endpoint RPC

Uma abordagem para lidar com endpoints RPC com falha é enviar solicitações adicionais ao mesmo endpoint RPC. Nessa metodologia, os desenvolvedores enviam repetidamente solicitações ao mesmo endpoint RPC, usando um pequeno intervalo entre cada nova tentativa. Essa técnica funciona melhor quando um endpoint RPC pode estar temporariamente fora do ar por um curto período, permitindo que os desenvolvedores enviem solicitações até que esse endpoint RPC volte a funcionar.

### 2. Alternar entre uma lista de endpoints RPC

Outra abordagem é se conectar a um ou mais endpoints RPC alternativos e enviar uma série de solicitações RPC entre uma lista de diferentes endpoints RPC. Nessa técnica, os desenvolvedores podem evitar o problema de um único endpoint RPC com falha prejudicar sua aplicação blockchain, tendo várias opções para tentar novamente as transações em vez de repetir a mesma transação no mesmo endpoint.

Em caso de falha de um endpoint RPC, desenvolvedores que usam uma lista de provedores RPC alternativos podem simplesmente se conectar a um endpoint diferente em sua lista aprovada.

## Como configurar um provedor RPC de fallback na Ethereum

Como configurar uma lista de endpoints RPC alternativos pode ser desafiador, uma opção mais simples, dependendo de como sua aplicação foi construída, é [trocar seu endpoint RPC primário por um provedor de backup mais confiável](https://www.alchemy.com/?a=c4273aa140), como a Alchemy.

Nessa abordagem, em vez de alternar entre múltiplos endpoints diferentes ou tentar novamente transações no mesmo endpoint, você pode substituir completamente a URL do seu endpoint RPC por um backup confiável.
