Design Blockchain RPC Service

Medium40 min
1 / 30
understanding9 min read

Problem Statement: Multi-Chain JSON-RPC at Scale

Problem Statement: Multi-Chain JSON-RPC at Scale — blockchain RPC system design depth

Problem Statement: Multi-Chain JSON-RPC at Scale

Design a production blockchain RPC platform (Infura / Alchemy / QuickNode class): multi-tenant JSON-RPC, WebSocket subscriptions, and fair routing to operator-run full nodes. This section covers problem statement: multi-chain json-rpc at scale during the understanding phase.

Operational detail

Anchor capacity: ~80k aggregate RPS, ~40k WebSocket connections, eth_getLogs ~15% of traffic. Expose X-Chain-Lag when serving behind tip; halt writes if backends disagree on block hash. Meter compute units: eth_call=16 CU, eth_getLogs=75 CU per 1k blocks, trace_*=500+ CU.

Failure and edge cases

Trace storms, log range scans, backend blackholes, and fork splits are daily incidents. Runbooks: drain backend, open circuit, shift WS coalescing group, notify tenant webhooks.

Interview checkpoints

javaOne Dark Pro
1public record RouteKey(int chainId, String method, String tenantId) {}
pythonOne Dark Pro
1def cu_weight(method: str, blocks: int) -> int:
2 weights = {'eth_call': 16, 'eth_getLogs': 75}
3 return weights.get(method, 10)
typescriptOne Dark Pro
1export type RouteKey = { chainId: number; method: string; tenantId: string };

Why interviewers care

Blockchain RPC Service interviews reward crisp scope, explicit trade-offs, and failure stories—not generic microservice diagrams.

Interview checkpoint

Name one failure story for Problem Statement: Multi-Chain JSON-RPC at Scale that proves you understand real outages, not happy-path diagrams.

Key Highlights

  • Managed RPC sits between dApps and operator-run full nodes—never replaces consensus
  • Product promise: low-latency eth_* / JSON-RPC with multi-chain routing and metering
  • Hot paths: eth_getBlockByNumber, eth_call, eth_sendRawTransaction, eth_getLogs, WS newHeads
  • Revenue ties to compute units (CU) and websocket minutes—not flat bandwidth alone
Staff+ signal
Lead with method-weighted capacity and backend lag alarms for Problem Statement: Multi-Chain JSON-RPC at Scale.
Avoid this
Treating RPC as a dumb TCP proxy without auth, metering, routing policy, or fork awareness.

Section Rescue Kit

Buzzwords to use:

Compute UnitSafe Head

Safe statements:

  • "For Problem Statement: Multi-Chain JSON-RPC at Scale, I'll separate edge scale from full-node operational burden."
  • "Let me quantify method mix and CU burn before picking regional pool sizes."
Design Blockchain RPC Service - System Design | WinJob | WinJob