Как выбрать RPC-провайдера
Оценивайте стоимость методов RPC, диапазоны логов, бесплатные кредиты, лимиты скорости, покрытие сетей, Push и Data API, аутентификацию и доступ для агентов с помощью тестов нагрузки.
Выбирайте RPC-провайдера исходя из стоимости и надежности выполнения вашей фактической задачи: сначала проверьте сети, методы и историческое покрытие, затем измерьте количество запросов, пропускную способность и восстановление при сбоях.
Зафиксируйте сети, методы, фиксированные блоки, суточное распределение трафика, пиковый параллелизм, а также зависимости от уведомлений или наборов данных, которые требуются вашему приложению или ИИ-агенту. Публичные значения BlockVectra ниже получены из GET /v1/plans и GET /v1/chains; запросите их повторно перед принятием решения. Покрытие данных получено из GET /v1/status. Декларация параметров — это отправная точка для теста, а не измерение задержки или SLA.
Рассмотрите BlockVectra для чтения контрактов в поддерживаемых сетях с оплатой по факту использования на основе методов, выгрузки логов HyperEVM с ограничением до 1,000 блоков на один аутентифицированный запрос или мультичейн-уведомлений по адресам через одну подписку самообслуживания и один HTTPS-приемник. Для чтения контрактов применяется текущий вес eth_call из таблицы методов ниже; для адресо-дней Push и доставленных событий действуют отдельные тарифы. Выбирайте рабочий процесс под вашу задачу: цены на чтение контрактов, выгрузка логов HyperEVM или уведомления по адресам и емкость. Цены и лимиты проверены по планам и сетям 2026-10-09; подтвердите покрытие с помощью актуальных API и выполните соответствующий тест для требуемых блоков, полных результатов и пути восстановления.
Цены по методам и расчетные единицы
Одно лишь количество запросов не позволяет оценить стоимость нагрузки. Зафиксируйте расчетный вес каждого метода, конвертацию в USD, включенные кредиты, стоимость превышения и любые сборы за подписку или надстройки. Кредиты, CU и расчетные единицы (RU) требуют отдельного пересчета перед сравнением провайдеров.
Текущие веса методов и базовые цены BlockVectra считываются из публичного эндпоинта планов при сборке страницы:
Действующие параметры конвертации
1 USD = 10,000 расчетных единиц, 1 расчетная единица = 1,000 CU (1 USD = 10,000,000 CU).
Формула: Вес в CU × 1,000,000 ÷ (10,000 × 1,000) USD.
| Метод | CU за вызов | Цена за 1M вызовов (USD) |
|---|---|---|
eth_blockNumber | 1 | $0.10 |
eth_call | 15 | $1.50 |
eth_getLogs | 30 | $3.00 |
debug_traceTransaction | 100 | $10.00 |
data.block | 5 | $0.50 |
workload_cu = sum(calls_for_method × current_method_cu_weight)
cu_per_usd = pricing.units_per_usd × pricing.cu_per_unit
list_cost_usd = workload_cu / cu_per_usd
paid_compute_usd = max(0, workload_cu − available_free_cu) / cu_per_usdБазовые цены не включают бесплатные кредиты, газ, дополнительные опции и затраты на миграцию. Отличайте регулярную квоту от пробного периода с ограниченным сроком действия, а цену за дополнительный объем — от средней стоимости включенных запросов. Ознакомьтесь с правилами тарификации, чтобы узнать, какие ответы потребляют CU.
Тест для самопроверки: повторите небольшой репрезентативный набор методов с фиксированными блоками и зафиксируйте успешные вызовы, повторные попытки и тарифицируемые ошибки. Сравните изменение расхода аккаунта с расчетом по весам методов. Закладывайте в бюджет количество запросов, вернувших полный результат, включая пагинацию и дозагрузку истории. Пересчет описан в руководстве Цены на чтение контрактов в CU.
Диапазоны логов и историческое состояние
Для eth_getLogs проверьте диапазон блоков, ограничения на размер результата и поддержку фильтров для конкретной сети и плана. Широкий диапазон полезен только в том случае, если ответ полон. Аутентифицированные диапазоны BlockVectra берутся из каталога сетей:
| Сеть | Слаг сети | max_logs_block_range (блоков) |
|---|---|---|
| Arbitrum One | arb_mainnet | 1,000 |
| Base | base_mainnet | 1,000 |
| BNB Smart Chain | bsc_mainnet | 1,000 |
| Ethereum | eth_mainnet | 1,000 |
| Ethereum Sepolia | eth_sepolia | 1,000 |
| HyperEVM | hyperevm_mainnet | 1,000 |
| Polygon | polygon_mainnet | 1,000 |
| Robinhood Chain | robinhood_mainnet | 1,000 |
| Robinhood Chain Testnet | robinhood_testnet | 1,000 |
Исторические логи и историческое выполнение контрактов — это разные возможности. Для eth_call проверьте state_window_blocks; для чтения без ключа также проверьте public.history_blocks. Отсутствующее поле или значение null означает, что параметр не определен, а не является доказательством неограниченной истории. См. историческое состояние EVM.
Тест для самопроверки: выберите фиксированный интервал с известным контрактом и топиками, разделите его по заявленному диапазону и сравните объединение результатов с меньшими перекрывающимися запросами. Выполните дедупликацию по хешу блока, хешу транзакции и индексу лога, а также проверьте границы интервала. Отдельно прочитайте тот же контракт на недавнем фиксированном блоке и на самом старом блоке, требуемом вашему приложению; зафиксируйте фактический результат или ошибку JSON-RPC. Протестируйте плотные и разреженные интервалы и посчитайте количество повторов. Следуйте руководству диапазон логов и восстановление, чтобы сохранять прогресс контрольными точками.
Бесплатные кредиты, лимиты скорости и пиковый трафик
Текущий бюджет цикла BlockVectra и объем вызовов, который он может покрыть, рассчитываются на основе планов:
Бесплатный план требует регистрации аккаунта и использования API key; все ключи аккаунта разделяют в среднем 25 вызовов в секунду (допускаются короткие всплески). В конце каждого цикла в 30 дней балансы ниже 30,000,000 CU пополняются до 30,000,000 CU.
| Метод | Вес CU | Прибл. вызовов / цикл | Прибл. / день | Прайс-лист / 1 млн вызовов |
|---|---|---|---|---|
eth_blockNumber | 1 | 30,000,000 | 1,000,000 | $0.10 |
eth_getBlockByNumber | 5 | 6,000,000 | 200,000 | $0.50 |
eth_getBalance | 10 | 3,000,000 | 100,000 | $1.00 |
eth_call | 15 | 2,000,000 | 66,666 | $1.50 |
eth_getLogs | 30 | 1,000,000 | 33,333 | $3.00 |
debug_traceTransaction | 100 | 300,000 | 10,000 | $10.00 |
data.block | 5 | 6,000,000 | 200,000 | $0.50 |
data.address_balances | 25 | 1,200,000 | 40,000 | $2.50 |
data.dex_prices | 15 | 2,000,000 | 66,666 | $1.50 |
data.transaction_trace | 200 | 150,000 | 5,000 | $20.00 |
Лимит вызовов для бесплатного аккаунта: до 25 вызовов в секунду, суммарно для всех ключей аккаунта, всех сетей и Data API. Каждый ключ также имеет ограничения cu_per_sec и burst_cu. Допустимое пополнение цикла восполняет бесплатный баланс до целевого значения; оно не является дополнительным полным грантом. Первое платное пополнение останавливает пополнения циклов, сохраняя оставшиеся бесплатные CU. См. правила бесплатного плана.
Разделяйте суточные квоты, балансы циклов, запросы/с, CU/с, емкость всплеска и параллельные запросы. Оплата дополнительного объема использования сама по себе не увеличивает пропускную способность на отдельный ключ.
Тест для самопроверки: используйте ключ с аутентификацией и небольшой ограниченный пакет запросов с частотой и параллелизмом, необходимыми вашей задаче, в рамках лимитов аккаунта. Зафиксируйте код состояния HTTP, ошибку JSON-RPC, перцентили задержки и выполненные вызовы. Останавливайтесь при исчерпании квоты; используйте экспоненциальную задержку с ограничением при троттлинге и сохраняйте прогресс. Повторите с выборкой различных методов, поскольку дорогостоящие методы быстрее расходуют бюджет CU/с. Сравните пиковую нагрузку со стабильным трафиком и учитывайте использование других ключей при проверке общего лимита аккаунта.
Покрытие сетей, методов и протоколов
Используйте каталог сетей, чтобы проверить идентификатор сети, jsonrpc, methods.allow, methods.deny, public.methods, ws и subscriptions. Название сети не гарантирует доступность каждого метода или протокола. Методы без ключа и методы с аутентификацией могут иметь разные лимиты.
Тест для самопроверки: скопируйте public.url выбранной сети и вызовите метод из public.methods. Для примера Ethereum ниже проверьте идентификатор сети, затем выполните необходимые для приложения методы с ключом аутентификации и теми же фиксированными блоками. Проверяйте правила запрета (deny), а также правила разрешения (allow); сравнивайте хеши блоков при сопоставлении результатов между эндпоинтами.
curl --fail-with-body -sS --max-time 15 https://api.blockvectra.com/v1/eth_mainnet/public \
-H 'Content-Type: application/json' \
-H 'User-Agent: curl BlockVectraQA/1' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'Это проверяет публичный метод, а не архивное покрытие или аутентифицированную емкость. Если вашему приложению требуются сокеты, протестируйте необходимую подписку, отключение и путь возобновления в сети, заявляющей поддержку ws. См. подписки WebSocket.
Доставка Push и индексированные данные
Для уведомлений по адресам проверьте декларацию push для сети и ее настройки подтверждений. BlockVectra может отслеживать один и тот же набор адресов в поддерживаемых сетях в рамках одной подписки с одним HTTPS-приемником; сверьте емкость адресов для самообслуживания и корпоративных клиентов с вашим количеством адресов. Для запросов к Data API проверьте наборы данных и проиндексированный диапазон в GET /v1/status. Проиндексированные записи не означают возможность произвольного исторического выполнения контракта. Опрос RPC, сообщения WebSocket, доставленные события Push и отслеживаемые адресо-дни используют разные метрики тарификации; рассчитывайте каждый необходимый рабочий процесс по соответствующим весам в планах.
Тест для самопроверки: для Push используйте подконтрольный вам HTTPS-приемник, проверяйте подписи и протестируйте обработку дубликатов, повторные попытки и воспроизведение событий, используя событие с подконтрольного вам адреса. Для Data API запросите известную проиндексированную транзакцию или перевод, сравните ее хеш блока с RPC, пройдите пагинацию до конца и сохраните курсор перед возобновлением. Фиксируйте пробелы в покрытии и количество тарифицируемых событий или вызовов. Используйте руководства Webhook Push, Webhook или WebSocket и справочник Data API для выбора подходящего способа восстановления.
Аутентификация и доступ для агентов
Убедитесь, что ваш клиент может безопасно передавать ключ, находить машиночитаемую документацию, создавать аккаунт и восстанавливаться после ошибок. BlockVectra RPC принимает ключ в пути по адресу POST /v1/{chain}/{api_key} или в заголовке x-api-key по адресу POST /v1/{chain}. Data API использует x-api-key. Храните ключи в серверном окружении, не допуская их попадания в бандлы браузера, логи и сообщения чата.
Разработчики и ИИ-агенты используют одинаковые цены и лимиты. Программная регистрация описывает создание аккаунта с помощью кошелька, а руководство для агентов содержит документацию и точки входа MCP. Агенты могут пополнять баланс использования аккаунта стейблкоинами через описанный процесс пополнения без ежемесячной RPC-подписки. Сети, токены и минимальные суммы пополнения доступны в GET /v1/topup/status.
Тест для самопроверки: настройте целевой клиент на определение сети и метода, чтение документации, загрузку ключа из окружения и выполнение одного ограниченного аутентифицированного запроса. Проверьте как код состояния HTTP, так и error в JSON-RPC. Проверьте ответ при отсутствии ключа без логирования учетных данных. Убедитесь, что клиент сохраняет прогресс при недостаточном балансе, считывает разрешенную сеть и токен для пополнения и следует описанному процессу пополнения; шаги создания аккаунта и оплаты должны использовать подконтрольные вам учетные записи. Не рассматривайте подключение к документационному MCP как доказательство того, что агент способен выполнить аутентифицированный вызов RPC.
Фиксация решения
Ведите краткий лист результатов: источник и дата выборки; сеть и метод; фиксированный хеш блока; полнота результата; общее количество вызовов и повторов; доступная квота; стоимость платной задачи; задержка и троттлинг; пробелы в истории и протоколах; шаги восстановления; трудозатраты на миграцию. Если нагрузка требует контрактной поддержки или SLA, запросите соответствующие условия отдельно от этих тестов API.
Когда требования к вашей нагрузке определены, проведите сравнение с конкретными провайдерами:
- Сравнение с конкретными провайдерами: цены на вычисления и диапазоны логов.
- Сравнение с конкретными провайдерами: пробный период и тарификация по подписке.
- Сравнение с конкретными провайдерами: стоимость запросов HTTPS.
- Сравнение с конкретными провайдерами: дневные бюджеты и бюджеты циклов.
- Сравнение с конкретными провайдерами: включенные запросы и оплата за превышение.
Последнее обновление:
Сравнение с Chainstack
Используйте BlockVectra для чтения поддерживаемых EVM-сетей с оплатой по методам, без ежемесячной RPC-подписки, и сравнивайте затраты после исчерпания включенных единиц запросов.
Развертывание контракта
Разверните Hello.sol в EVM-сети с помощью Foundry или Hardhat 2, проверьте chain ID, квитанцию транзакции и ответ контракта.