Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 49 additions & 24 deletions benchmarks/hydration-rpc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,44 +4,49 @@ slug: hydration-rpc
number: "186"
title: Fastest free Hydration RPC, live no-key endpoint latency
seo_title: "Fastest free Hydration RPC 2026"
seo_description: "Hydration RPC bench temporarily suspended: all 5 providers are DNS dead or returning HTTP 400. Will resume when endpoints recover."
seo_description: "{{best_name}} leads free Hydration RPC at {{best_p50}} (chain_getHeader Substrate p50, 24h). 2 providers measured every 60s from 3 regions."
subtitle: HTTP round-trip latency for chain_getHeader against every free, no-key public Hydration Polkadot parachain endpoint, audited every 60 seconds from 3 regions.

category: RPCs
status: draft
status: live
metric: RPC latency
unit: ms
higher_is_better: false

seo_intro: |
Hydration (formerly HydraDX) is an Omnipool-based DEX parachain on Polkadot enabling single-sided liquidity provision across assets. HDX is the native token. This bench is currently suspended: all 5 previously measured providers (Hydration official, Dwellir, Helikon, Dotters Network, Parachains Network) are either DNS dead or returning HTTP 400. The bench will resume when endpoints recover.
Hydration (formerly HydraDX) is an Omnipool-based DEX parachain on Polkadot enabling single-sided liquidity provision across assets. HDX is the native token. It produces one block every 6 seconds via the Polkadot relay and exposes a Substrate JSON-RPC interface. Public keyless endpoints are available from Hydration official and Dwellir. Every provider was live-verified with consecutive chain_getHeader probes at launch.

abstract: |
Per-chain member of the RPC latency cluster, extended to Hydration.
This bench is currently suspended: all 5 previously measured providers
are DNS dead or returning HTTP 400. Data will resume when at least
one keyless Hydration RPC endpoint becomes reachable again.
We measure the round-trip latency of a single Substrate JSON-RPC call
(chain_getHeader) against every available public Hydration parachain
node that sustains continuous probing: 2 providers at launch, every
60 seconds, from us-east, eu-west and Singapore. The harness classifies
every response (ok / http_err / jsonrpc_err / stale / timeout) with a
Polkadot-scaled staleness gap (40 blocks, around 4 min at 6 s/block).
The cross-chain view lives on the parent rpc-capabilities benchmark;
this page is the Hydration-scoped answer with per-region breakdowns.

methodology:
- "Cadence: every 60 seconds per provider, from each of 3 probe regions (us-east Virginia, eu-west Amsterdam, sgp Singapore). Headline p50/p90/p99 aggregate across all 3 regions via Prometheus `avg(quantile_over_time(...))`; per-region breakdowns are first-class on this page via the region tabs."
- "Payload: `{\"jsonrpc\":\"2.0\",\"id\":<rotating>,\"method\":\"chain_getHeader\",\"params\":[]}`. Plain HTTP POST, identical for every endpoint, no API key in any request."
- "Latency: client-side round-trip delta in milliseconds, exposed as both a gauge and a histogram (buckets 50 ms to 10 s), so percentiles are computed via Prometheus `quantile_over_time` over the last 24 hours."
- "Call-result classification: `ok` (HTTP 200 + parsable hex block number), `http_err`, `jsonrpc_err`, `stale` (more than 40 blocks behind the cross-provider tip), `timeout`."
- "This page is part of the per-chain RPC cluster derived from the cross-chain [rpc-capabilities](https://openchainbench.com/benchmarks/rpc-capabilities) benchmark; the identical harness, cadence and exclusion rules apply on every chain."
- "Chain scope: every query on this page is pinned to `chain=\"hydration\"`. Bench currently suspended: all 5 previously measured providers are DNS dead or returning HTTP 400."
- "Cadence: every 60 seconds per provider, from each of 3 probe regions (us-east Virginia, eu-west Amsterdam, sgp Singapore). Headline p50/p90/p99 aggregate across all 3 regions via Prometheus avg(quantile_over_time(...)); per-region breakdowns are first-class on this page via the region tabs."
- "Payload: {\"jsonrpc\":\"2.0\",\"id\":<rotating>,\"method\":\"chain_getHeader\",\"params\":[]}. Plain HTTP POST. Substrate JSON-RPC."
- "Latency: client-side round-trip delta in milliseconds, exposed as both a gauge and a histogram (buckets 50 ms to 10 s), so percentiles are computed via Prometheus quantile_over_time over the last 24 hours."
- "Call-result classification: ok (HTTP 200 + parsable hex block number), http_err, jsonrpc_err, stale (block more than 40 behind the cross-provider tip), timeout. Latency without reliability is a misleading ranking signal."
- "This page is part of the per-chain RPC cluster derived from the cross-chain rpc-capabilities benchmark; the identical harness, cadence and exclusion rules apply on every chain."
- "Chain scope: every query on this page is pinned to chain=hydration. Provider coverage at launch: 2 endpoints (Hydration official, Dwellir)."

findings:
- "Hydration RPC bench is suspended. All previously measured providers (Hydration official, Dwellir, Helikon, Dotters Network, Parachains Network) are unreachable."
- "{{best_name}} currently leads Hydration RPC at {{best_p50}} (chain_getHeader p50, 24h) across 2 measured providers."

faq:
- q: "What is the fastest free Hydration RPC right now?"
a: "This bench is currently suspended. All 5 previously measured keyless providers are DNS dead or returning HTTP 400. The bench will resume when at least one reachable endpoint is found."
- q: "Which Hydration RPCs work without an API key?"
a: "All 5 previously verified endpoints (Hydration official, Dwellir, Helikon, Dotters Network, Parachains Network) are currently unreachable. The bench will resume when providers recover."
a: "{{best_name}} currently leads at {{best_p50}} (Hydration block number p50 over the last 24h), measured against 2 providers probed every 60 seconds from us-east, eu-west and Singapore. The leaderboard re-sorts continuously against fresh Prometheus samples."
- q: "Which Hydration RPC endpoints work without an API key?"
a: "2 endpoints sustain continuous keyless probing at launch: Hydration official (rpc.hydradx.cloud) and Dwellir (hydration-rpc.n.dwellir.com). Every listed endpoint was live-verified with a chain_getHeader call returning a parsable block number before inclusion."
- q: "Does the fastest Hydration RPC change by region?"
a: "Often. The region tabs at the top of the page re-scope every number to a single origin."
- q: "How is Hydration RPC latency measured here?"
a: "One identical Substrate JSON-RPC POST (`chain_getHeader`) every 60 seconds from each of 3 regions."
a: "Often. Public infra concentrates in specific regions; a gateway that wins from Amsterdam can lose from Singapore by multiples. The region tabs at the top of the page re-scope every number to a single origin."
- q: "How is Hydration RPC latency measured here, technically?"
a: "One chain_getHeader Substrate JSON-RPC POST every 60 seconds against each provider from each of 3 regions. Wall-clock round-trip is recorded at millisecond precision; p50/p90/p99 are computed via Prometheus quantile_over_time over 24 hours."

source: https://github.com/ChainBench/OpenChainBench/tree/main/harnesses/rpc-capabilities

Expand All @@ -58,14 +63,11 @@ dimensions:
- { value: eu-west, label: EU-West }
- { value: sgp, label: Singapore }

# All 5 previously measured providers are DNS dead or returning HTTP 400.
# Suspended 2026-08-07. Will resume when endpoints recover.
# Removed: dwellir, helikon, dotters-network, parachains-network
providers:
- slug: hydration-official
name: Hydration
tag: Hydration official public RPC (currently unreachable)
formula: "50th percentile over 24h of client-side round-trip latency (ms) for a single `chain_getHeader` POST sent every 60s from 3 regions to the Hydration official no-key endpoint."
tag: Hydration official public RPC (rpc.hydradx.cloud), keyless
formula: "50th percentile over 24h of client-side round-trip latency (ms) for a chain_getHeader POST sent every 60s from 3 regions to rpc.hydradx.cloud."
queries:
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="hydration-official", chain="hydration"})
p90: avg(ocb:rpc_latency_milliseconds:p90_24h{provider="hydration-official", chain="hydration"})
Expand All @@ -84,3 +86,26 @@ providers:
- region: ap-southeast
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="hydration-official", chain="hydration", region="sgp"})
series: avg_over_time(rpc_latency_milliseconds{provider="hydration-official", chain="hydration", region="sgp"}[1h])

- slug: dwellir
name: Dwellir
tag: Dwellir public Hydration RPC (hydration-rpc.n.dwellir.com), keyless
formula: "50th percentile over 24h of client-side round-trip latency (ms) for a chain_getHeader POST sent every 60s from 3 regions to hydration-rpc.n.dwellir.com."
queries:
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="dwellir", chain="hydration"})
p90: avg(ocb:rpc_latency_milliseconds:p90_24h{provider="dwellir", chain="hydration"})
p99: avg(ocb:rpc_latency_milliseconds:p99_24h{provider="dwellir", chain="hydration"})
mean: avg(ocb:rpc_latency_milliseconds:mean_24h{provider="dwellir", chain="hydration"})
success: sum(ocb:rpc_call:ok_rate_24h{provider="dwellir", chain="hydration"}) / sum(ocb:rpc_call:rate_24h{provider="dwellir", chain="hydration"})
sample_size: sum(ocb:rpc_call:increase_24h{provider="dwellir", chain="hydration"})
series: avg(avg_over_time(rpc_latency_milliseconds{provider="dwellir", chain="hydration"}[1h]))
regions:
- region: us-east
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="dwellir", chain="hydration", region="us-east"})
series: avg_over_time(rpc_latency_milliseconds{provider="dwellir", chain="hydration", region="us-east"}[1h])
- region: eu-west
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="dwellir", chain="hydration", region="eu-west"})
series: avg_over_time(rpc_latency_milliseconds{provider="dwellir", chain="hydration", region="eu-west"}[1h])
- region: ap-southeast
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="dwellir", chain="hydration", region="sgp"})
series: avg_over_time(rpc_latency_milliseconds{provider="dwellir", chain="hydration", region="sgp"}[1h])
80 changes: 0 additions & 80 deletions benchmarks/trading-app-execution.yml

This file was deleted.

13 changes: 13 additions & 0 deletions harnesses/rpc-capabilities/cmd/script/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,19 @@ func chains() []Chain {
{Slug: "publicnode", Name: "PublicNode", URL: envDefault("RPC_URL_POLKADOT_PUBLICNODE", "https://polkadot-rpc.publicnode.com")},
},
},
// ─── Hydration (Polkadot parachain, Omnipool DEX) — Substrate
// chain_getHeader probe. Resumed 2026-08-19 after all 5 original
// providers went dead; verified: rpc.hydradx.cloud (Hydration
// official), hydration-rpc.n.dwellir.com (Dwellir).
{
Slug: "hydration",
Name: "Hydration",
Kind: "polkadot",
Providers: []Provider{
{Slug: "hydration-official", Name: "Hydration", URL: envDefault("RPC_URL_HYDRATION_OFFICIAL", "https://rpc.hydradx.cloud")},
{Slug: "dwellir", Name: "Dwellir", URL: envDefault("RPC_URL_HYDRATION_DWELLIR", "https://hydration-rpc.n.dwellir.com")},
},
},
// ─── Osmosis (Cosmos SDK, CometBFT / Tendermint) — first
// Cosmos chain in the cluster. Probed via Tendermint JSON-RPC
// `status` (returns sync_info.latest_block_height +
Expand Down
7 changes: 6 additions & 1 deletion next.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -264,7 +264,12 @@ const nextConfig: NextConfig = {
},
{
source: "/apps/exec",
destination: "/benchmarks/trading-app-execution",
destination: "/trading-apps",
permanent: true,
},
{
source: "/benchmarks/trading-app-execution",
destination: "/trading-apps",
permanent: true,
},
{
Expand Down
Loading
Loading