Pular para o conteúdo
0%

Clientes de nó da camada de execução (EL) e da camada de consenso (CL)

Alchemy team headshot

Escrito por Alchemy

Publicado em 8 de julho de 20224 min de leitura

O sucesso desenfreado do Ethereum nos últimos anos impulsionou sua popularidade entre os entusiastas de blockchain. Como resultado, o Ethereum passou a enfrentar uma ampla gama de problemas de escalabilidade, comumente observados em suas altas taxas de gas, tempos de bloco lentos e congestionamento da rede.

Ao separar o Ethereum em duas camadas altamente otimizadas, uma camada de execução (EL) e uma camada de consenso (CL), a rede se torna mais escalável. Cada camada exige uma infraestrutura de node client ligeiramente diferente.

Neste artigo, vamos destacar os principais node clients de execução do Ethereum:

  • Geth (Go Ethereum)
  • Nethermind
  • Erigon
  • Hyperledger Besu

Também vamos destacar os principais node clients da camada de consenso:

  • Prsym
  • Teku
  • Lighthouse
  • Nimbus
  • Lodestar

Quais são os clients de camada de execução mais populares?

No ecossistema blockchain atual, os clients de camada de execução mais populares são Geth (80.1%), Erigon (8.7% de adoção), Besu (3.0%) e Nethermind (2.6%).

Os clients de camada de execução rodam na camada de execução para manter e gerenciar o estado geral da blockchain, além de processar as transações usando máquinas virtuais.

1. Geth (go ethereum)

Usando o Geth, os desenvolvedores podem interagir com a blockchain do Ethereum via Ethereum nodes usando a linha de comando e a linguagem de programação Go. Os desenvolvedores podem usar o Geth para executar transações no Ethereum ou minerar a criptomoeda nativa do Ethereum, o ETH.

Como configurar o client Geth no MacOS (homebrew)

2. Erigon

O Erigon é um client de camada de execução do Ethereum escrito na linguagem de programação Go. O Erigon oferece uma implementação otimizada do Ethereum com ênfase em velocidade, e é usado principalmente para rodar archive nodes que gerenciam grandes volumes de dados de estado.

Como configurar o client Erigon no MacOS

Embora o Erigon seja uma implementação de client popular para archive nodes, clients como Silkworm (C++) e Akula (Rust) demonstraram desempenho comparável, senão superior, para rodar archive nodes.

3. Besu

O Besu é um client de camada de execução do Ethereum construído pela Hyperledger usando a linguagem de programação Java sob a licença Apache 2.0, permitindo que engenheiros rodem nodes do Ethereum.

Os desenvolvedores podem interagir com o Besu usando a linha de comando e a API JSON-RPC, acessível via RPC, HTTP ou WebSockets. O Besu é usado para mineração de ETH e para desenvolver smart contracts ou aplicações descentralizadas.

Como configurar o client Besu no MacOS

4. Nethermind

O Nethermind é um client de camada de execução do Ethereum construído sobre o .NET core que permite aos engenheiros desenvolver em nodes do Ethereum.

Como configurar o client Nethermind no MacOS

O que é a camada de consenso?

A camada de consenso serve como a nova infraestrutura de backend da blockchain do Ethereum, hospedando e verificando a eficácia dos validadores.

No modelo PoS, a validação ocorre na forma de staking, em que os validadores fazem stake de ETH como garantia, que pode ser retirada pela rede (slashed) em caso de má conduta.

Quais são os clients de camada de consenso do Ethereum?

Existem vários clients de camada de consenso, incluindo Lighthouse, Prysm, Nimbus, Teku e Lodestar.

1. Lighthouse

O Lighthouse é um client de camada de consenso desenvolvido pela Sigma Prime e escrito na linguagem de programação Rust. A implementação do Lighthouse enfatiza segurança e desempenho durante o merge do Ethereum para PoS.

Como configurar o client Lighthouse no MacOS

2. Prysm

O Prysm é um client de camada de consenso desenvolvido pela Prysmatic Labs na linguagem de programação Go. A implementação do Prysm incorpora de forma abrangente o protocolo de PoS e staking do Ethereum, com forte foco em segurança e confiabilidade.

Como configurar o client Prysm no MacOS

3. Nimbus

O Nimbus é um client de camada de consenso desenvolvido usando a linguagem de programação Rust. A implementação do client de camada de consenso do Nimbus se concentra em desenvolver um client leve, capaz de ser hospedado em uma ampla variedade de dispositivos de hardware.

Como configurar o client nimbus no MacOS

4. Teku

O Teku é um client de camada de consenso desenvolvido pela equipe do Besu, usando a linguagem de programação Java. A implementação do Teku é voltada para investidores institucionais, e não para o público geral.

Como configurar o client teku no MacOS

5. Lodestar

O Lodestar é um client de camada de consenso desenvolvido pela ChainSafe Systems na linguagem de programação Typescript. O Lodestar foi desenvolvido para ser um client leve e fácil de implantar, ao mesmo tempo em que atrai desenvolvedores de Typescript e Javascript.

Como configurar o client lodestar no MacOS

Conclusão

A separação das camadas de execução e consenso foi parte do tão aguardado upgrade Ethereum Merge, em 2022.

Background gradient

Construa magia blockchain

A Alchemy combina os produtos e ferramentas de desenvolvimento Web3 mais poderosos com recursos, comunidade e suporte lendário.