Solana Geyser gRPC - Quickstart

Instalar o SLV

bash
curl -fsSL https://storage.slv.dev/slv/install | sh

$ slv b init

slv b init
Com um único comando, slv b init, você pode imediatamente criar um ambiente de desenvolvimento para robôs Solana usando dados baseados em fluxo de alto desempenho.
bash
slv b init
  • Use geyser-ts se preferir um bot TypeScript Geyser
  • Use geyser-rust se preferir um bot Rust Geyser

Adicione os IPs à allowlist do balanceador de carga gRPC

O nó mais próximo de seu IP registrado é escolhido usando verificações de ping em tempo real de cada balanceador de carga gRPC regional. Se ICMP é bloqueado por um firewall (ufw, grupos de segurança, etc.), o ping pode mostrar 9999ms, o que pode impedir que a região próxima ideal seja selecionada. Adicione os IPs à allowlist abaixo para que sua região mais próxima seja escolhida automaticamente.
RegionDomainIP Address
🇳🇱 Amsterdamgrpc-ams1.erpc.global84.32.103.245
🇳🇱 Amsterdamgrpc-ams1.erpc.global84.32.64.77
🇺🇸 New Yorkgrpc-ny6-1.erpc.global64.130.37.222
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.149
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.177
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.206
🇬🇧 Londongrpc-lon6-1.erpc.global67.209.52.250
🇯🇵 Tokyogrpc-tokyo-6.erpc.global198.13.133.88
🇸🇬 Singaporegrpc-sgp6-1.erpc.global202.8.11.52
🇦🇺 Sydneygrpc-syd-1.erpc.global82.26.116.36
🛰️ Far Pointgrpc-far-point.erpc.global63.254.162.14

Endpoints gRPC Burst

Geyser gRPC Burst é o nível gRPC compartilhado de baixa latência da ERPC para cargas de trabalho de streaming Solana sensíveis à latência. O Burst usa a mesma interface Yellowstone/Geyser gRPC do serviço gRPC regular, então clientes gRPC existentes podem continuar usando assinaturas padrão de account, transaction, slot e block.
O Burst atualmente opera em Frankfurt, Amsterdam, New York, Tokyo e Singapore. A seleção por latência ainda usa os IPs de origem de ping gRPC regulares listados acima; os IPs dos load balancers Burst abaixo são os endpoints Burst públicos que devem ser permitidos para conexões de clientes.
RegionBurst DomainIP Address
🇩🇪 Frankfurtgrpc-fra1-burst.erpc.global64.130.41.234
🇳🇱 Amsterdamgrpc-ams1-burst.erpc.global64.130.55.180
🇺🇸 New Yorkgrpc-ny6-burst.erpc.global64.130.59.217
🇯🇵 Tokyogrpc-tokyo-burst.erpc.global208.91.107.247
🇸🇬 Singaporegrpc-singapore-burst.erpc.global67.209.55.15
Use o endpoint exibido no ERPC Web Dashboard depois de registrar seu IP. O Burst continua sendo um stream Geyser gRPC completo; Direct Shreds/ShredStream é um produto separado baseado em UDP para dados shred brutos.

Exemplo do cliente Geyser – TypeScript

  1. Renomeie .env.sample para .env
  2. Edite .env com seus valores reais:
ini
GEYSER_ENDPOINT=http://grpc-ams1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
Nota:
Este endpoint é um exemplo e não pode ser usado como está. Por favor, obtenha e configure o endpoint apropriado para o seu ambiente.
  1. Instale dependências e inicie o servidor de desenvolvimento:
bash
pnpm i
pnpm dev
Geyser TypeScript VSCode

Exemplo do cliente Geyser – Rust

  1. Renomeie .env.sample para .env
  2. Edite .env com seus valores reais:
ini
GEYSER_ENDPOINT=http://grpc-ams1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
Nota:
Este endpoint é um exemplo e não pode ser usado como está. Por favor, obtenha e configure o endpoint apropriado para o seu ambiente.
  1. Compilar e executar o cliente:
bash
RUST_LOG=info cargo run
Geyser Rust VSCode

1 dia de teste grátis disponível

Os bots Geyser e Shreds podem ser testados gratuitamente por 1 dia através do Painel Web ERPC.

Solana Stream SDK

Solana Stream SDK
O adaptador Geyser usado no código inicial baixado através do slv b init comando
é fornecido pelo código aberto Solana Stream SDK.
Ele suporta tanto Rust quanto TypeScript, permitindo a implementação eficiente da comunicação de fluxo Solana,
incluindo assinaturas da Geyser, processamento de transações e monitoramento da atualização da conta em tempo real.
O código inicial que você obtém é um exemplo direto deste SDK em ação,
tornando mais fácil estender para o seu próprio desenvolvimento bot ou lógica personalizada.
Para mais detalhes, visite o repositório GitHub:
https://github.com/ValidatorsDAO/solana-stream