---
title: "Prós e contras de rodar seu próprio node"
description: "Diferenças entre rodar seu próprio node e usar Alchemy"
---

# Prós e contras de rodar seu próprio node

Executar um node significa instalar um software "client" em uma máquina, que fará download, verificação e propagação de novos blocos pela rede blockchain.

Atualmente existem dois tipos de software client de node: [execution clients e consensus clients](https://www.alchemy.com/overviews/execution-layer-and-consensus-layer-node-clients). Os execution clients são responsáveis por gerenciar o estado geral da blockchain e concluir transações, e os consensus clients são responsáveis por verificar as transações.

Para [propagar transações pela rede](https://www.alchemy.com/overviews/transaction-propagation), os nodes usam uma série de protocolos de rede P2P para descobrir novos nodes, estabelecer conexões seguras e sincronizar estado, blocos e transações pendentes.

## O que é um node Ethereum?

Um node Ethereum é um node que opera na blockchain Ethereum, e é um dos [três tipos principais](https://www.alchemy.com/overviews/full-vs-light-vs-archive-nodes): light nodes, full nodes e archive nodes.

#### **1. Full node**

Um full node verifica todas as transações em cada novo bloco, ajudando a garantir que a rede seja segura e que os dados das transações sejam válidos.

#### **2. Light node**

Um light node armazena dados de cabeçalho de bloco, como o hash do bloco anterior e um timestamp, em vez dos dados completos do bloco como um full node faz.

Light nodes enviam solicitações sob demanda a full nodes, validando apenas as partes do estado que seus usuários precisam.

#### **3. Archive node**

Um [archive node](https://www.alchemy.com/overviews/archive-nodes) mantém os mesmos dados que um full node, além dos dados de estado do histórico completo da blockchain desde o Genesis Block (ou seja, o primeiro bloco).

### Por que executar um node Ethereum RPC?

Desenvolvedores Web3 podem optar por executar um node Ethereum RPC para ler e escrever dados na blockchain. Alguns desenvolvedores escolhem executar seus próprios nodes para personalizar a configuração do node, aumentar a segurança e fazer otimizações em nível de sistema que não são possíveis usando nodes compartilhados ou dedicados de um provedor de RPC.

## **Quais são os benefícios de executar seu próprio node Ethereum?**

Existem quatro benefícios principais em executar um node Ethereum: privacidade e segurança, resistência à censura, descentralização e soberania.

### **1. Privacidade e segurança**

Ao usar nodes compartilhados, suas transações compartilham o mesmo hardware com outras empresas, o que pode representar um risco de conformidade ou segurança para seu produto específico.

Algumas equipes preferem nodes dedicados, seja executando seus próprios nodes para garantir isolamento e autonomia completos, ou usando um provedor de nodes que ofereça nodes dedicados.

### **2. Resistência à censura**

Manter seu próprio node permite garantir a transmissão de transações para o restante da rede a qualquer momento. Se você usar nodes de terceiros, os provedores podem potencialmente bloquear transações do seu endereço de IP específico ou bloquear transações para endereços de smart contract específicos.

### **3. Descentralização**

Executar seu próprio node significa que você não depende de um provedor de infraestrutura centralizado para operar seu node. No entanto, há vetores adicionais de centralização a considerar, como o provedor de cloud escolhido (por exemplo, AWS, GCP, etc.), ou, se você estiver executando uma configuração bare metal, a localização do servidor (por exemplo, Virginia, Alemanha, etc.).

No caso de uma interrupção no seu data center ou no seu provedor de cloud, desenvolvedores web3 que gerenciam seus próprios nodes devem avaliar seus provedores, construir uma configuração tolerante a falhas e documentar um plano de continuidade de negócios.

### **4. Soberania**

Desenvolvedores que executam seus próprios nodes têm controle total para escolher os softwares client de node preferidos, como esses clients são configurados, a quantidade e o tipo de hardware, e outras decisões específicas de hardware.

Esse nível de flexibilidade pode significar melhor desempenho para casos de uso específicos de aplicações web3 em que um provedor de node RPC não consegue oferecer as mesmas escolhas granulares sobre configurações de hardware e software.

<ImageBlock
  src="https://media.alchemy.com/1704095403-running-node-vs-using-node-provider.jpeg"
  alt="Rodar seu próprio node vs. usar um provedor de node"
  width={1600}
  height={1029}
  caption="Um diagrama mostrando como rodar um node é diferente de usar um provedor de node como o Alchemy."
/>

## **Quais são algumas das contrapartidas de executar seu próprio node?**

Existem três contrapartidas principais ao executar um node por conta própria em comparação com o uso de um provedor de node RPC: custos de manutenção, tempo e confiabilidade.

### **1. Custos de manutenção**

Executar seu próprio full node requer hardware dedicado (por exemplo, RAM, armazenamento, etc.) para fazer download, validar e armazenar informações de transações. Manter o hardware para suportar níveis variáveis de uso do produto é importante para equilibrar capacidade e tolerância a falhas para seus clientes sem gastar demais.

Os custos de manutenção de executar um node dependerão fortemente de você usar um provedor como Amazon Web Services, executar um servidor bare-metal, do tempo de engenharia e da quantidade de recursos de hardware e largura de banda necessários para sua aplicação específica.

### **2. Custos de tempo**

Executar e manter nodes de blockchain pode envolver muitos problemas técnicos, o que pode ser difícil e demorado para iniciantes.

Para startups web3 com financiamento e tempo de engenharia limitados, dedicar uma quantidade não trivial de recursos de engenharia para gerenciar sua própria infraestrutura tem o custo de não focar na construção da funcionalidade principal do produto.

Além disso, à medida que seu produto web3 escala, seus recursos de engenharia também precisarão escalar para manter uma frota de nodes autogerenciados confiáveis, garantindo uptime e capacidade para suportar usuários adicionais.

### **3. Custos de confiabilidade**

Startups que consideram executar seu próprio node enfrentam inúmeros problemas de confiabilidade, como bugs em atualizações de software, picos de CPU, vazamentos de memória, problemas de disco, peering inconsistente e [precisão dos dados](https://www.alchemy.com/blog/data-accuracy) em uma frota de nodes.

Nodes não confiáveis não apenas tomam tempo de engenheiros que poderiam estar construindo a funcionalidade principal do produto, mas também impactam diretamente a experiência do usuário.

Quando os nodes ficam fora do ar, os usuários não conseguem usar seu produto, o que traz diversas implicações potenciais, como usuários migrando para produtos alternativos.

## **4 formas pelas quais a Alchemy ajuda desenvolvedores Web3 com infraestrutura de node**

A Alchemy é a principal plataforma de desenvolvimento web3, dando suporte às principais aplicações descentralizadas em chains como Ethereum, Polygon, Optimism, Arbitrum e outras.

Abaixo está uma lista de ferramentas construídas pela Alchemy para garantir que os desenvolvedores tenham acesso a uma infraestrutura de node confiável e ferramentas de desenvolvimento de primeira linha.

### **Alchemy Supernode**

O [Alchemy Supernode](https://www.alchemy.com/docs/reference/api-overview) é nosso mecanismo web3 que substitui nodes de blockchain autogerenciados, com uma frota de nodes com a qual os desenvolvedores interagem como se fosse um único super node.

**O Supernode tem vantagens incomparáveis:**

- 99,9% de confiabilidade
- Escalabilidade dinâmica
- Correção de dados
- Sem tempo de configuração ou sincronização
- Testnets
- APIs aprimoradas

<ImageBlock
  src="https://media.alchemy.com/1704123279-alchemy-supernode-architecture.jpg"
  alt="Visão simplificada da arquitetura Supernode do Alchemy."
  width={1593}
  height={1600}
  caption="Visão simplificada da arquitetura Supernode do Alchemy."
/>

‍

### **Alchemy Build**

A Alchemy também fornece um conjunto interno de ferramentas de desenvolvimento para identificar erros e lançar produtos mais rápido do que nunca. Com o Alchemy Build, os desenvolvedores podem pesquisar instantaneamente em milhões de requisições, visualizar transações em tempo real no mempool, fazer chamadas JSON-RPC diretamente do navegador, entre outras funcionalidades.

O conjunto de ferramentas de desenvolvimento do Alchemy Build inclui:

- **Composer** - teste chamadas de API em tempo real a partir de uma interface online simples
- **Explorer** - pesquise requisições históricas para depurar transações
- **Mempool Visualizer** - veja o estado em tempo real das transações no mempool

<ImageBlock
  src="https://media.alchemy.com/1704123332-alchemy-build.jpg"
  alt="Alchemy Build no painel do desenvolvedor."
  width={1400}
  height={670}
  caption="Alchemy Build no painel do desenvolvedor."
/>

### Alchemy Monitor

A Alchemy ajuda a monitorar a saúde de suas aplicações com um painel de controle robusto para verificar instantaneamente tempos de resposta, análises de uso, insights e alertas, além de relatórios diários, para que você nunca perca contato.

A [ferramenta de monitoramento](https://www.alchemy.com/monitor) da Alchemy fornece aos desenvolvedores:

- Monitoramento de aplicações e alertas
- Dashboard com detalhes em nível de aplicação
- Visualizações geográficas para saber onde seus usuários estão localizados
- Medição de uso para entender como sua aplicação está sendo utilizada

### ‍**Suporte Alchemy**

A Alchemy tem suporte especializado e prático, e mantém a [Alchemy Status Page](https://status.alchemy.com/) para manter os usuários atualizados sobre o status de nossas APIs.

- 98% de Índice de Satisfação do Cliente (CSAT)
- Acesso a Customer Product Engineers
- Conexões com outras pessoas do setor

Para solicitações urgentes, envie um ticket de suporte para **support@alchemy.com**!
