Sete conceitos formam a base do desenvolvimento na Solana. Comece por Contas e Programas, e depois acompanhe como as Instruções se tornam Transações. PDAs, CPIs e Taxas complementam esse modelo de execução.
Contas
A Solana armazena todo o estado em contas, um repositório chave-valor indexado por endereços de 32 bytes. Cada conta possui cinco campos: lamports, data, owner, executable e rent_epoch.
Programas
Os contratos inteligentes da Solana, compilados para sBPF. Os programas são stateless e todo o estado mutável reside em contas de dados separadas, passadas via instruções.
Instruções
Uma solicitação para executar um programa, contendo um ID de programa, uma lista de contas e bytes de dados opacos. Múltiplas instruções são compostas em uma única transação.
Transações
A unidade atômica de execução na Solana. Contém assinaturas e uma mensagem (endereços de contas, blockhash recente e instruções compiladas). Máximo de 1232 bytes, ou 4096 com o formato v1.
Taxas
Taxa base de 5.000 lamports por assinatura, mais uma taxa de prioridade opcional baseada nas unidades de computação solicitadas. Máximo de 1,4 milhão de unidades de computação por transação.
Program Derived Addresses (PDAs)
Endereços determinísticos derivados de um ID de programa e seeds. Apenas o programa proprietário pode assinar em nome de um PDA via invoke_signed.
Cross-Program Invocations (CPIs)
Um programa chamando outro via invoke ou invoke_signed. Os privilégios de assinante e de escrita são estendidos ao destinatário. Profundidade máxima da pilha de instruções de 5 (nível superior mais CPIs).
Tópicos Adicionais
Ativos
Ativos digitais fungíveis e não fungíveis na Solana (SPL Token, Token-2022).
Clusters e Endpoints
Mainnet, Devnet e Testnet: grupos de validator que atendem requisições JSON-RPC.
| Cluster | Endpoint RPC Público | Uso |
|---|---|---|
| Mainnet | https://api.mainnet.solana.com | Produção |
| Devnet | https://api.devnet.solana.com | Experimentação para desenvolvedores |
| Testnet | https://api.testnet.solana.com | Testes de validator |
Is this page helpful?