Solana Geyser gRPC - Быстрый старт

Установите SLV

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

$ slv b init

slv b init
Одной командой slv b init вы можете мгновенно scaffold'ить среду разработки для Solana bots на базе высокопроизводительных stream-oriented данных.
bash
slv b init
  • Используйте geyser-ts, если предпочитаете TypeScript Geyser bot
  • Используйте geyser-rust, если предпочитаете Rust Geyser bot

Добавьте IP-адреса gRPC load balancer в allowlist

Ближайшая нода к вашему зарегистрированному IP выбирается с помощью ping checks в реальном времени со всех региональных gRPC load balancer. Если ICMP блокируется firewall'ом (ufw, security groups и т.д.), ping может показывать 9999ms, из-за чего не всегда выбирается оптимальный ближайший регион. Добавьте IP-адреса ниже в allowlist, чтобы ближайший регион выбирался автоматически.
РегионДоменIP-адрес
🇳🇱 Amsterdamgrpc-ams1.erpc.global84.32.103.245
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.149
🇺🇸 New Yorkgrpc-ny6-1.erpc.global64.130.59.62
🇺🇸 Chicagogrpc-chi-1.erpc.global84.32.32.147
🇯🇵 Tokyogrpc-tokyo-6.erpc.global143.20.238.2
🇸🇬 Singaporegrpc-sgp6-1.erpc.global202.8.11.52

Пример Geyser Client - TypeScript

  1. Переименуйте .env.sample в .env
  2. Отредактируйте .env, указав ваши реальные значения:
ini
GEYSER_ENDPOINT=http://grpc-ams1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
Обратите внимание:
Этот endpoint приведен только как пример и не может использоваться как есть. Получите и настройте endpoint, соответствующий вашей среде.
  1. Установите зависимости и запустите dev server:
bash
pnpm i
pnpm dev
Geyser TypeScript VSCode

Пример Geyser Client - Rust

  1. Переименуйте .env.sample в .env
  2. Отредактируйте .env, указав ваши реальные значения:
ini
GEYSER_ENDPOINT=http://grpc-ams1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
Обратите внимание:
Этот endpoint приведен только как пример и не может использоваться как есть. Получите и настройте endpoint, соответствующий вашей среде.
  1. Соберите и запустите client:
bash
RUST_LOG=info cargo run
Geyser Rust VSCode

✅ Доступен бесплатный пробный доступ на 1 день

И Geyser, и Shreds bots можно бесплатно протестировать в течение 1 дня через официальный Discord server Validators DAO.
Присоединяйтесь: https://discord.gg/C7ZQSrCkYR

Solana Stream SDK

Solana Stream SDK
Geyser adapter, используемый в starter code, который загружается командой slv b init, предоставляется открытым проектом Solana Stream SDK.
Он поддерживает и Rust, и TypeScript, позволяя эффективно реализовывать Solana stream communication, включая Geyser subscriptions, обработку transactions и мониторинг account updates в реальном времени.
Starter code, который вы получаете, - это прямой пример работы этого SDK, который легко расширить под собственную bot-разработку или custom logic.
Подробнее см. в репозитории GitHub: https://github.com/ValidatorsDAO/solana-stream