Como economizamos mais de US$ 3 milhões por ano com o Notify API e SDK da Alchemy
Uma otimização e tanto, bem debaixo do nosso nariz
Se você constrói em web3, precisa testar suas aplicações descentralizadas. Mas testar em redes reais custa muito dinheiro. Por isso, builders de web3 usam testnets como a Goerli, onde transacionar e validar comportamento com tokens de testnet é gratuito.
Para obter tokens de testnet, você precisa de faucets. Faucets são um serviço crítico que "pinga" tokens de testnet gratuitos para builders, para que possam construir em testnets como Goerli ou Mumbai.
Na Alchemy, nossa missão é levar o web3 a um bilhão de pessoas, especialmente esses builders. Por isso, construímos faucets que facilitam o trabalho dos desenvolvedores, trazendo acesso sem precedentes a tokens de testnet para todos os desenvolvedores, enquanto simplificamos e disseminamos o desenvolvimento em web3.
Desde 2021, operamos o Goerli Faucet e o Mumbai Faucet (além do descontinuado Rinkeby Faucet), enviando tokens de testnet para desenvolvedores mais de 3 milhões de vezes!
Os faucets Goerli e Mumbai atualmente atendem a tanto tráfego que operá-los custa à Alchemy vários milhões de dólares por ano. Mas recentemente identificamos uma economia de 300x nos custos, totalizando mais de US$ 3 milhões economizados por ano.
Como, você pergunta?
Usando o Alchemy Notify e o Alchemy SDK... nossos próprios produtos... bem debaixo do nosso nariz.
Leia 👇 para entender como otimizamos os faucets. Use nossas técnicas para otimizar suas aplicações também.
Problema: chamadas JSON-RPC excessivas (e caras)
Os dois principais problemas em como operávamos nossos faucets eram:
- Chamadas excessivas a getTransactionReceipt
- Uso de uma biblioteca web3 legada
Dado o volume diário de solicitações ao faucet, o número total de chamadas RPC aos nossos nodes cresceu rapidamente.
Vamos examinar cada problema.
1. Nenhum sistema de notificação para confirmar transações mineradas
Toda vez que um usuário solicitava Goerli ETH (GETH) ou Mumbai MATIC, chamávamos getTransactionReceipt repetidamente até que a transação fosse confirmada como minerada, muitas vezes exigindo várias chamadas a getTransactionReceipt por única solicitação de usuário.
Com tráfego nominal no faucet, e sem o bug da biblioteca web3 legada, esse modelo teria sido extremamente ineficiente, mas não exorbitante.
Em média, teríamos enviado ~16 chamadas a getTransactionReceipt toda vez que um usuário solicitasse tokens do faucet.
2. Uso de uma biblioteca Web3 legada
Nosso serviço usava uma biblioteca web3 legada que, sem que soubéssemos, tinha um bug. Mesmo após confirmar uma transação bem-sucedida, o sistema continuava chamando nossos nodes, aumentando drasticamente o número total de chamadas (desnecessárias) a getTransactionReceipt.
Veja o Alchemy dashboard em ação
Walkthrough guiado de 30 minutos: todas as ferramentas do dashboard, demonstradas ao vivo.
Watch the demoSolução: Alchemy Notify e o Alchemy SDK
As duas principais soluções que implementamos para reduzir as caras chamadas JSON-RPC aos nossos nodes foram:
- Substituir chamadas a getTransactionReceipt pelas notificações via webhook do Alchemy Notify
- Substituir a biblioteca web3 legada pelo Alchemy SDK
1. Migrando para o Alchemy Notify
Abandonamos a chamada direta ao método getTransactionReceipt bruto e passamos a usar os webhooks do Alchemy Notify para receber notificações em tempo real quando transações são mineradas e descartadas. Sem chamadas de saída, as notificações são enviadas diretamente para nós quando os usuários recebem GETH com sucesso.
2. Atualizando para o Alchemy SDK
Migramos da biblioteca web3 legada para o Alchemy SDK, corrigindo efetivamente o bug que aumentava exponencialmente o número de chamadas a getTransactionReceipt necessárias.
Economia de custo anualizada
Essas duas mudanças simples economizaram para nossa equipe um custo anualizado de mais de US$ 3.000.000. Para operar nossos faucets, reduzimos o custo total anual para aproximadamente US$ 560. 🤯
O que isso significa para o seu projeto
Produtos como o Alchemy Notify e o Alchemy SDK são projetados para resolver problemas que tornam a operação de seus produtos web3 desnecessariamente cara, trabalhosa e demorada.
Eles são muito fáceis de configurar, e os benefícios de economia de custo e tempo garantem que você tenha tempo e dinheiro para focar no core business do seu frontend, em vez de se preocupar com a infraestrutura do seu backend.
Estudos de caso relacionados
Chains20 de dezembro de 2023
Optimism x Alchemy: Impulsionando o sucesso dos desenvolvedores
Até o fim de 2022, o TVL na Optimism ultrapassou US$ 1 bilhão e, com o uso de Optimistic rollups, os custos de gas ficaram 51 vezes mais baratos do que os custos de gas da Ethereum em dezembro de 2022.
Chains20 de dezembro de 2023
Alchemy impulsiona o crescimento exponencial da Polygon
DeFi13 de outubro de 2026
Como o Cash App faz a movimentação de dinheiro em stablecoins parecer tão simples quanto dinheiro
O Cash App usa Alchemy Node APIs e Webhooks para que cada saldo e transferência de stablecoins permaneça continuamente verificável contra o estado público da chain.

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