Skip to main content
Ищете управляемый сервис gRPC от Helius? На этой странице в качестве справочного материала описан открытый протокол Yellowstone gRPC. Для работы в продакшене с воспроизведением исторических данных за 48 часов, отказоустойчивостью на базе нескольких узлов и полностью управляемой средой используйте LaserStream — совместимое с Yellowstone предложение gRPC от Helius.

Что такое Yellowstone gRPC?

Yellowstone gRPC обеспечивает потоковую передачу данных со сверхнизкой задержкой из блокчейна Solana, подключаясь напрямую к лидерам Solana для получения шредов по мере их создания. Благодаря этому ваше приложение получает данные в реальном времени с минимальной задержкой.

High Performance

Бинарный протокол с эффективной сериализацией для максимальной пропускной способности и минимального потребления трафика

Real-time Streaming

Двунаправленная потоковая передача с мгновенным созданием и отменой подписок

Advanced Filtering

Точное управление получаемыми данными с помощью фильтров аккаунтов, транзакций и программ

Multiple Data Types

Подписка на аккаунты, транзакции, слоты, блоки и записи в одном потоке

Типы потоков

Отслеживайте изменения аккаунтов в реальном времениОтслеживайте обновления баланса, изменения данных и владельца, а также события создания и удаления аккаунтов с помощью точных параметров фильтрации.

Account Monitoring Guide

Узнайте, как передавать обновления аккаунтов в потоке, на примерах фильтрации

Как получить доступ к Yellowstone gRPC

Выберите вариант, который лучше всего соответствует вашим потребностям:

LaserStream

LaserStream — это многопользовательский высокодоступный сервис gRPC с автоматическим аварийным переключением и возможностью воспроизведения исторических данных за 48 часов. Оптимальный вариант для большинства продакшен-приложений.
Начните работу с LaserStream через панель управления Helius. Для Mainnet требуется тариф Business или Professional; Devnet доступен на тарифе Developer и выше. Подробности см. в разделе «Тарифы и цены».

Выделенные узлы

Выделенные узлы предоставляют эксклюзивную конечную точку gRPC с гарантированной изоляцией ресурсов. Лучше всего подходят для специализированных требований и опытных операторов.

Сравнение вариантов gRPC

Нужна помощь с выбором? Прочитайте наше руководство по сравнению gRPC, чтобы определить, что лучше подходит для вашего сценария: LaserStream или выделенные узлы.

Быстрый старт

Готовы запустить потоковую передачу? Сначала прочитайте наше подробное руководство по настройке или начните работу через панель управления:

Yellowstone gRPC Quickstart

Описывает установку, аутентификацию и настройку первого потока

Get Started

Включите LaserStream в панели управления Helius и запустите потоковую передачу.

Структура запроса на подписку

Для каждой подписки gRPC требуется правильно структурированный запрос. Ниже описано, как его создать:

Основные параметры

string
required
Уровень подтверждения для согласованности данных
  • processed — транзакция обработана узлом
  • confirmed — транзакция подтверждена кластером
  • finalized — транзакция финализирована кластером
boolean
Поддержание активного соединенияУстановите значение true, чтобы получать сообщения pong каждые 15 секунд и предотвращать разрыв соединения по тайм-ауту из-за балансировщиков нагрузки или прокси-серверов.
array
Оптимизация передачи данныхЗапрашивайте определенные диапазоны байтов из данных аккаунта:

Настройка фильтров

array<string>
Массив публичных ключей аккаунтов для отслеживания (логическое ИЛИ)
array<string>
Массив публичных ключей владельцев для отслеживания (логическое ИЛИ)
array<object>
Фильтры DataSize и Memcmp (логическое И):
Если используются фильтры нескольких типов, между ними действует логическое И. Между значениями внутри массивов действует логическое ИЛИ.
boolean
Включать или исключать транзакции голосования
boolean
Включать или исключать неуспешные транзакции
string
Отслеживать определенную подпись транзакции
array<string>
Включать транзакции с участием любого из этих аккаунтов (логическое ИЛИ)
array<string>
Исключать транзакции с участием любого из этих аккаунтов
array<string>
Включать транзакции с участием всех этих аккаунтов (логическое И)
array<string>
Фильтровать транзакции и аккаунты внутри блоков
boolean
Включать все транзакции внутри блока
boolean
Включать все обновления аккаунтов внутри блока
boolean
Включать все записи внутри блока
boolean
default:"false"
Если установлено значение true, будут поступать только обновления слотов для указанного уровня подтверждения. Если установлено значение false, будут поступать обновления для всех уровней подтверждения.

Пример: базовый мониторинг транзакций

Ниже приведен полный пример, который поможет вам начать работу:
Это базовый пример. Для работы в продакшене реализуйте надлежащую обработку ошибок, логику повторного подключения и обработку данных. Полные примеры реализации приведены в наших подробных руководствах.

Готовы начать?

Complete Setup Guide

Установка, аутентификация и реализация первого потока

Stream Pump AMM Data

Практический пример: мониторинг транзакций Pump AMM

Дополнительные ресурсы