---
title: "Um guia para desenvolvedores sobre soluções de escalabilidade do Ethereum"
description: "Por que são necessárias e uma análise dos diferentes tipos"
---

# Um guia para desenvolvedores sobre soluções de escalabilidade do Ethereum

A ênfase da Ethereum em descentralização e segurança significa que as transações são processadas lentamente. Isso afeta o throughput da rede e impacta a capacidade de escala das [aplicações descentralizadas](https://www.alchemy.com/dapps/top/defi-dapps).

Muitos designs foram propostos para resolver os problemas de escalabilidade da Ethereum, cada um oferecendo benefícios diferentes. Este guia apresentará as soluções de escalabilidade da Ethereum e explicará como funcionam e por que são importantes.

## O que é escalabilidade?

**Escalabilidade se refere à capacidade de um sistema de lidar com aumentos exponenciais de uso sem sacrificar a funcionalidade.** No contexto da tecnologia blockchain, escalabilidade significa a capacidade de uma blockchain de suportar mais transações sem afetar sua funcionalidade.

Atualmente, a capacidade da Ethereum de processar transações é limitada a 7-15 transações por segundo \(TPS\). Por outro lado, bancos de dados centralizados tradicionais—como Oracle Database e Microsoft SQL Server—conseguem processar milhares de transações por segundo.

<ImageBlock
  src="https://media.alchemy.com/1703255069-ethereum-transactions-per-second.png"
  alt="gráfico de transações por segundo do ethereum"
  width={1600}
  height={431}
/>

[Fonte: Blockchair](https://blockchair.com/ethereum/charts/transactions-per-second)

### Duas formas como o design da ethereum afeta a escalabilidade

A Ethereum tem baixo throughput e velocidades de processamento lentas porque prioriza descentralização e segurança em detrimento da escalabilidade \(o trilema da escalabilidade\).

Aqui estão algumas formas como o design da Ethereum afeta a escalabilidade:

#### 1. O algoritmo de consenso da Ethereum processa transações sequencialmente

A Ethereum usa proof of work \(PoW\), o que significa que as transações na rede precisam ser aceitas e validadas por todos os nós. Isso favorece a descentralização e, mais importante, a segurança.

A desvantagem é que a execução sequencial das transações afeta a finalidade da transação \(o tempo necessário para confirmar uma transação\). Isso contribui ainda mais para a incapacidade da Ethereum de suportar taxas altas de TPS.

#### 2. A Ethereum limita o tamanho dos blocos a 1MB

A Ethereum limita a quantidade de dados que um bloco minerado pode conter \(1MB\) porque limitar o tamanho do bloco melhora a descentralização, permitindo que os nós armazenem o histórico da blockchain de forma mais eficiente. Blocos maiores dificultam a execução de nós completos por parte das pessoas, prejudicando a descentralização.

No entanto, o limite de 1MB no tamanho do bloco reduz a quantidade de dados de transação que os mineradores conseguem incluir em um bloco, afetando o throughput da rede. Tamanhos de bloco pequenos também afetam o custo do gas, o recurso computacional necessário para executar operações na [Ethereum Virtual Machine](https://www.alchemy.com/overviews/what-is-the-ethereum-virtual-machine-evm).

Como os mineradores têm poder computacional finito, eles frequentemente precisam priorizar transações com taxas mais altas. Isso cria uma espécie de guerra de lances entre os usuários da Ethereum e força aumentos astronômicos nas taxas de transação.

## O que são soluções de escalabilidade da Ethereum?

**Soluções de escalabilidade da Ethereum são plataformas projetadas especificamente para melhorar a execução de transações na rede Ethereum.** Soluções de escalabilidade da Ethereum como rollups de layer 2 e sidechains são protocolos que usam mecanismos diferentes para aumentar o throughput da rede.

<ImageBlock
  src="https://media.alchemy.com/1703255042-ethereum-scaling-solutions-diagram.png"
  alt="diagrama de soluções de escalabilidade do ethereum"
  width={1600}
  height={987}
/>

[Fonte: Reddit](https://www.reddit.com/r/ethfinance/comments/pdp4ch/daily_general_discussion_august_29_2021/harsrjh/?context=3)

### Soluções de escalabilidade de layer 1 vs. layer 2

As soluções de escalabilidade podem ser divididas em duas categorias amplas, "on-chain" e "off-chain", diferenciadas com base no seu ponto de execução.

#### Soluções de escalabilidade de layer 1

A escalabilidade de layer 1 envolve fazer mudanças na rede blockchain e reescrever a camada base. A descrição "on-chain" significa que os [upgrades de escalabilidade da Ethereum](https://www.alchemy.com/overviews/ethereum-2-0-your-guide-for-2022) são executados na própria blockchain.

##### Layer 1s podem escalar aumentando o tamanho dos blocos

Uma possível melhoria de escalabilidade de Layer 1 é aumentar o tamanho do bloco. Se o tamanho de bloco de 1MB da Ethereum fosse aumentado, os mineradores teriam mais espaço para incluir dados adicionais de transações nos blocos.

Embora aumentar o tamanho do bloco da Ethereum levasse a um aumento nas taxas de TPS, o efeito colateral é uma progressão lenta em direção à centralização, porque à medida que os tamanhos dos blocos crescem, o tamanho da blockchain aumenta—dificultando a execução de um nó completo \(a menos que você tenha um supercomputador\). Por esse motivo, a comunidade Ethereum descartou blocos maiores como solução de escalabilidade.

##### Layer 1s podem escalar processando transações em paralelo com blockchain sharding

[Blockchain sharding](https://www.alchemy.com/overviews/ethereum-sharding-an-introduction-to-blockchain-sharding) é uma melhoria de escalabilidade que introduz execução paralela de transações no lugar do modelo de execução sequencial padrão que a Ethereum usa. No sharding, a blockchain é dividida em cadeias menores \(shards\) que validam e processam transações separadas.

**Considere como a Ethereum funciona atualmente:**

As transações são transmitidas por toda a rede até que possam ser validadas. O sharding não exige que as transações sejam aprovadas por todos os nós. Em vez disso, cada shard tem validadores \(chamados de collators\) para aprovar transações.

Cada **collation** \(um conjunto de transações nas shard chains\) precisa ser assinada por ⅔ dos collators. Além disso, a collation proposta precisa ser adicionada à cadeia principal antes de alcançar a finalidade. Juntas, essas medidas ajudam a garantir a segurança do sistema.

Com o sharding, a Ethereum pode aumentar o TPS sem sacrificar descentralização ou segurança. Como as shard chains processam transações diferentes simultaneamente, a capacidade geral de processamento da rede aumenta. Além disso, os participantes da rede ainda podem provar a validade das collations dos shards por meio de provas criptográficas.

<ImageBlock
  src="https://media.alchemy.com/1703255000-ethereum-sharding-diagram.jpeg"
  alt="diagrama de sharding do ethereum"
  width={792}
  height={379}
  caption="Fonte: Genesis Block"
/>

[Fonte: Genesis Block](https://genesisblockhk.com/what-is-sharding-a-solution-for-blockchain-scalability/)

#### Soluções de escalabilidade de layer 2

As melhorias de escalabilidade de Layer 2 \(L2\) são assim chamadas porque são executadas fora da cadeia principal \(Layer 1\). Também chamadas de soluções "off-chain", a escalabilidade de Layer 2 envolve o processamento de transações em uma rede separada que depende da cadeia principal para segurança.

As soluções L2 geralmente são projetadas com ênfase na velocidade de transação e na escalabilidade—descentralização e segurança são preocupações menores aqui. Como postam dados de transação na camada principal da Ethereum, as L2s podem se beneficiar da descentralização e segurança da mainnet. Além disso, como as soluções L2 são construídas sobre a Ethereum, elas não precisam de seu próprio token nativo.

Esses protocolos off-chain podem agregar múltiplas transações em uma única transação e adicioná-la à cadeia principal. Isso reduz a pressão sobre a rede e melhora o potencial dos apps de escalar à medida que o uso cresce.

**Exemplos de soluções de escalabilidade de Layer 2 incluem:**

- Rollups
- State channels
- Plasma
- Validium

### Layer 2 vs. sidechains

Uma sidechain é uma blockchain separada que interage com a [Ethereum Mainnet](https://www.alchemy.com/rpc/ethereum), mas não depende dela para segurança. As sidechains se conectam à Ethereum via uma ponte cross-chain, que permite transferências de ativos entre as duas cadeias.

As sidechains são boas para escalabilidade porque são projetadas com um conjunto diferente de qualidades que permite alto throughput. Por exemplo, a sidechain Polygon usa um algoritmo de consenso proof of stake \(PoS\) para transações mais rápidas.

A principal [diferença entre soluções de Layer 2 e sidechains](https://www.alchemy.com/overviews/sidechains-vs-layer2s) está nas garantias de segurança. Enquanto as redes L2 contam com as garantias de segurança da Ethereum, as sidechains não contam.

Uma sidechain é protegida por seu próprio mecanismo de consenso, enquanto as L2s se beneficiam do consenso da Ethereum. É por isso que muitos consideram as L2s mais seguras do que as sidechains.

## Por que soluções de escalabilidade são necessárias para a Ethereum?

Boas soluções de escalabilidade da Ethereum ajudam a fornecer aos desenvolvedores web3 e usuários taxas de gas mais baixas e transações mais rápidas, mantendo as transações seguras.

Aqui está o motivo pelo qual as soluções de escalabilidade são necessárias para a Ethereum:

### 1. Taxas de transação mais baixas

O problema das taxas de gas da Ethereum tem sido alvo de críticas generalizadas. Melhorias de escalabilidade podem reduzir o congestionamento da rede e levar a quedas significativas nos custos de transação.

Preços de gas mais baixos se traduzem em uma melhor experiência do usuário e maior adoção dos apps. Os usuários não precisarão lidar com transações falhadas ou pagar taxas de gas exorbitantes.

### 2. Transações mais rápidas

Muitas soluções de escalabilidade foram criadas especificamente para melhorar a capacidade da Ethereum de processar mais transações em um período de tempo menor.

Por exemplo, rollups podem agrupar milhares de transações off-chain em uma única transação on-chain. Da mesma forma, o sharding aumenta o throughput incentivando o processamento paralelo de transações.

O resultado líquido dessas melhorias é um aumento nas taxas de transações por segundo \(TPS\). Embora as estimativas variem, muitos esperam que L2s e sharding levem o TPS da Ethereum para a casa dos milhares.

### 3. Segurança aprimorada

As L2s são ótimas para escalar a Ethereum sem diminuir a segurança da rede. Diferente da escalabilidade on-chain, os projetos de escalabilidade off-chain não afetam a descentralização da Ethereum.

Mesmo que essas L2s sejam cadeias separadas, sua segurança está fortemente ligada à blockchain Ethereum. Isso significa que os usuários podem interagir com segurança com esses projetos, aproveitando os benefícios da escalabilidade, sem colocar seus ativos em risco.

## As cinco soluções de escalabilidade da Ethereum mais populares

As cinco soluções de escalabilidade da Ethereum mais populares são: rollups, sidechains, state channels, plasma chains e Validium.

### 1. Rollups

Rollups combinam ou "agrupam" múltiplas transações executadas off-chain em um lote e as enviam para a cadeia principal. Um único rollup pode conter centenas, senão milhares, de transações comprimidas para reduzir o volume de transações que a cadeia principal precisa processar.

Além de melhorar a escalabilidade, rollups oferecem níveis de segurança semelhantes aos da própria Ethereum, pois as transações nos rollups estão ancoradas à cadeia L1, o que garante a finalidade da transação.

Existem dois tipos principais de rollups: optimistic rollups e [zero-knowledge rollups](https://www.alchemy.com/blog/zero-knowledge-rollups). Cada tipo difere na forma como as transações são computadas e postadas na Ethereum:

**Zero-knowledge rollups** ou ZK-rollups realizam a computação off-chain e geram uma prova criptográfica chamada Succinct Non-Interactive Argument of Knowledge \(SNARK\) ou Succinct Transparent Argument of Knowledge \(STARK\). Essas **"provas de validade"** garantem aos nós da cadeia principal a validade dos lotes de transações.

**Optimistic rollups** assumem que as transações são válidas por padrão e não geram provas de validade para cada lote de transações. No entanto, a validade das transações em um optimistic rollup pode ser contestada por meio de uma **prova de fraude**.

Então, como os dois esquemas de rollup se comparam? Os ZK-rollups são mais seguros, já que geram provas de validade, porém isso os torna mais lentos que os optimistic rollups.

Os ZK-rollups são mecanismos complexos, o que dificulta programar compatibilidade com a EVM neles. Como resultado, os ZK-rollups têm funcionalidade limitada em comparação com os optimistic rollups.

A Polygon está trabalhando em uma [zero-knowledge EVM \(zkEVM\)](https://www.alchemy.com/overviews/polygon-zk-rollups) para aumentar a funcionalidade dos zero-knowledge rollups na rede Ethereum, com seus planos para o Hermez 2.0.

#### L2s da Ethereum que usam optimistic rollups

- Optimism
- Arbitrum
- Boba Network
- Immutable X

#### L2s da Ethereum que usam ZK rollups

- [zkSYNC](https://www.alchemy.com/overviews/what-is-zksync-era)
- Loopring
- dYdX
- StarkNet

Como desenvolvedor, você pode integrar rollups ao seu dApp para melhorar a finalidade das transações e a escalabilidade. Dessa forma, seus usuários não precisam enfrentar taxas de gas altas, transações que falham e velocidades de processamento lentas—o que acontece com frequência na Ethereum.

### 2. Sidechains

Uma sidechain é um tipo de solução de layer 2 que consiste em uma blockchain separada que opera em paralelo com a Ethereum Mainnet. Essas diferenças podem estar nos incentivos cripto-econômicos, mecanismos de consenso, entre outros.

Sidechains projetadas especificamente para a Ethereum têm compatibilidade com a Ethereum Virtual Machine \(EVM\) e podem suportar smart contracts. Isso significa que você pode implantar projetos em sidechains e aproveitar suas melhorias de escalabilidade para os apps.

[Pontes cross-chain](https://www.alchemy.com/overviews/cross-chain-bridges) são necessárias para conectar sidechains à plataforma de smart contracts da Ethereum. Como o nome sugere, uma blockchain bridge fornece um caminho para os usuários se moverem entre a cadeia principal e a sidechain.

Para usar uma bridge, você precisa bloquear alguns ativos \(ETH neste caso\) na cadeia de origem. Depois disso, uma quantidade equivalente de ativos é produzida na sidechain e depositada em sua wallet.

Você pode então transacionar livremente na sidechain, aproveitando sua capacidade superior de processamento de transações. Como explicado anteriormente, as sidechains são projetadas para oferecer escalabilidade e empregam mecanismos diferentes para alcançar isso.

#### Exemplos de sidechains da Ethereum:

- Polygon
- xDAI
- SKALE

Outras [blockchains alternativas de Layer 1 \(L1\)](https://www.alchemy.com/overviews/layer-1-blockchain-ecosystems-overview) também podem funcionar como sidechains da Ethereum, especialmente as blockchains compatíveis com EVM. Essas alt L1s costumam oferecer benefícios como taxas de gas mais baixas, melhor finalidade de transação e, em certos casos, funcionalidade mais rica.

#### Exemplos de L1s compatíveis com EVM:

- Avalanche
- Fantom
- Binance Smart Chain

### 3. State channels

State channels são soluções de escalabilidade off-chain que permitem que duas partes transacionem sem que a cadeia principal precise validar cada transação. Um state channel é essencialmente um smart contract multi-assinatura que só executa com a aprovação das partes necessárias.

#### Como funcionam os state channels

1. Alice quer abrir um state channel com Bob, que vende café para ela todas as manhãs. Vamos supor que ela deposite 0,4 ETH no canal e essa transação seja publicada na Mainnet.

2. Após essa transação de abertura, Alice e Bob podem executar transações off-chain pelo tempo que quiserem. A única ressalva é que ambos precisam assinar as transações, o que significa que Alice e Bob devem aprovar cada pagamento pelo café.

3. Se Alice esgotar seu depósito, ela pode publicar uma **transação de saída** na cadeia principal. Essa transação refletirá o último estado conhecido do canal, que então é registrado para finalidade. Alice e Bob podem ter transacionado dezenas de vezes, mas a rede Ethereum registra apenas duas transações—**as transações de entrada e saída**.

Um state channel permite que as partes conduzam transações off-chain seguras sem ter que enfrentar longos tempos de espera e altas taxas de transação. Também melhora a escalabilidade porque os mineradores têm menos transações para processar e conseguem trabalhar mais rápido.

#### Soluções de escalabilidade da Ethereum que usam state channels:

- Raiden Network
- Connext Network
- Celer Network

### 4. Plasma chains

O whitepaper do Plasma introduz o conceito de "child chains", que se originam da blockchain principal ou "root chain". Embora as [Plasma chains](https://www.plasma.io/plasma.pdf) possam validar transações, elas dependem da segurança da root chain. Para provar a validade das transações, as child chains enviam provas criptográficas para a root chain.

As plasma chains são semelhantes às sidechains, pois se conectam à blockchain Ethereum via smart contracts. Usar uma plasma chain exige bloquear ETH em um smart contract na root chain antes de obter tokens na child chain.

O Plasma é considerado uma solução de escalabilidade L2 porque deriva sua segurança diretamente da camada base da Ethereum. É isso que as torna mais seguras do que, digamos, as sidechains.

O Plasma publica **Merkle roots** para cada bloco na cadeia principal da Ethereum. As block roots são pequenas informações que podemos usar para verificar dados sobre transações. Se ocorrer um ataque em uma plasma chain, os usuários podem sair com segurança para a cadeia principal e retirar seus fundos usando as provas apropriadas.

#### Soluções de escalabilidade da Ethereum que usam plasma

- OMG Plasma
- Gluon Network

### 5. Validium

Os validiums são semelhantes aos ZK-rollups, realizando a computação fora da camada principal da Ethereum, mas a principal diferença é que os validiums usam "disponibilidade de dados off-chain" em vez de postar dados comprimidos na cadeia principal, como os ZK-rollups fazem.

Os validiums armazenam dados off-chain com um provedor de dados, tornando-os, até certo ponto, custodiais. No entanto, algumas soluções como a StarkWare usam [Data Availability Committees](https://medium.com/starkware/data-availability-e5564c416424) \(DACs\) para garantir que os provedores de dados ajam de forma honesta.

Os validiums têm taxas muito baixas e transações rápidas \(até 100.000 tps\). No entanto, eles têm mais pressupostos de confiança do que outras soluções de escalabilidade, como os ZK-rollups.

#### Soluções de escalabilidade da ETH que usam validium:

- DiversiFi
- Immutable X

## Quais são algumas desvantagens das soluções de escalabilidade?

**Duas desvantagens das soluções de escalabilidade da Ethereum são que elas são complexas de implementar e potencialmente têm garantias de segurança mais baixas.**

### 1. Complexidade

Muitas soluções de escalabilidade são complexas de implementar, o que pode afetar sua funcionalidade. Por exemplo, a equipe de desenvolvimento da Ethereum tem adiado consistentemente a data de lançamento do sharding devido à quantidade de trabalho que o upgrade exige.

### 2. Garantias de segurança mais baixas

Embora muitas soluções de escalabilidade L2 e L1 dependam da Ethereum para segurança, elas não podem ser tão seguras quanto a primeira. Cada solução de escalabilidade sacrifica alguns elementos \(como descentralização e segurança\) em troca de velocidade. Os usuários precisam estar bem cientes desses riscos antes de usar essas plataformas.

## Conclusão

Os projetos de escalabilidade abordados neste guia provavelmente terão um papel importante no avanço da Ethereum rumo à escalabilidade. Resta saber, porém, se isso será suficiente para garantir escala a longo prazo.

Planejando escalar seu próximo dApp em uma L2?

[Crie uma conta gratuita na Alchemy](https://auth.alchemy.com/signup/?a=83b14f668d), a maior plataforma de desenvolvimento blockchain do mundo, que suporta as L2s mais populares, incluindo Arbitrum, Optimism, Polygon e StarkNet.
