Fluxo de Trabalho Localnet vs Devnet
Um fluxo passo a passo para escolher localnet (solana-test-validator), devnet, Surfpool ou mainnet para uma tarefa de desenvolvimento.
Busque em todas as páginas da documentação
Um fluxo passo a passo para escolher localnet (solana-test-validator), devnet, Surfpool ou mainnet para uma tarefa de desenvolvimento.
Anchor.toml.Se sim - reservas de pool ao vivo, preços de oráculo ou versões de programa de produção - vá ao Passo 2. Se não - você controla todas as contas e programas - vá ao Passo 5.
--clone é suficiente?Se sim - clone pubkeys específicos no solana-test-validator - use localnet com clones (Cloning Mainnet Accounts).
Se não - grafo DeFi amplo ou refresh frequente de estado necessário - vá ao Passo 3.
Se sim - use Surfpool 0.12.0 para loops de simulação de fork da mainnet (Surfpool). Se não - vá ao Passo 4.
Se sim - use devnet com programas públicos e financiamento via faucet. Se não - volte ao Passo 2 e expanda a lista de clone ou adote Surfpool.
Se sim - use localnet com anchor test e fixtures (Loading Programs & Fixtures).
Se não - demos de carteira ou compartilhamento entre equipes necessário - vá ao Passo 6.
Se sim - deploy na devnet com ID de programa documentado no README. Se não - cada engenheiro usa deploy em localnet com IDs locais ou arquivos de keypair sincronizados.
Se sim - localnet no GitHub Actions com --reset e fixtures commitados - evite limites de taxa da devnet.
Se não - job de smoke opcional noturno na devnet é aceitável.
Se sim - devnet é sinal fraco; use devnet + priority fees para verificações básicas, depois sondas pequenas na mainnet com SOL real (Setting Priority Fees). Se não - permaneça na localnet/devnet dos passos anteriores.
Se sim - devnet com URL de RPC estável e carteira de demo financiada.
Se não - localnet funciona com wallet adapters apontando para localhost:8899.
Se sim - pare - use mainnet com quantias mínimas e confirmação finalized apenas. Se não - nunca use mainnet para esta tarefa; retorne ao caminho localnet/devnet escolhido.
Registre URL do cluster, IDs de programa, versões de fixture e pins da toolchain (Agave 4.1.1) no PR para reprodutibilidade.
Limites de taxa, estado compartilhado instável e iteração mais lenta prejudicam o desenvolvimento diário de programas - localnet é mais rápida e determinística.
Falta efeitos de rede ao vivo, validadores peer e congestionamento realista - sondas devnet/mainnet ainda importam antes do lançamento.
Abaixo deste fluxo para testes unitários Rust - nenhum cluster RPC necessário (LiteSVM).
Sim - comece local, evolua para devnet em demos de carteira, depois sondas na mainnet - atualize solana config e variáveis de ambiente a cada vez.
http://127.0.0.1:8899 com RPC customizado na carteira - nem todas as carteiras suportam localhost bem; devnet pode ser mais fácil para demos.
Versões da stack: Esta página foi escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0 e LiteSVM 0.6.x.
Revisado por Chris St. John·Última atualização: 16 de jul. de 2026