Corvus Labs

Regions

Corvus metros and which products run in each: Solana RPC in five, Falcon, aRPC and Shredstream in all nine.

Falcon, aRPC and Shredstream run in all nine Corvus metros. Solana RPC (JSON-RPC, WebSocket and Yellowstone gRPC) is offered in five of them.

Product availability by metro

MetroCodeSolana RPCFalconaRPCShredstream
๐Ÿ‡ฉ๐Ÿ‡ช Frankfurtfraโœ“โœ“โœ“โœ“
๐Ÿ‡ณ๐Ÿ‡ฑ Amsterdamamsโœ“โœ“โœ“โœ“
๐Ÿ‡ฌ๐Ÿ‡ง Londonlonโœ“โœ“โœ“โœ“
๐Ÿ‡บ๐Ÿ‡ธ New Yorknycโœ“โœ“โœ“โœ“
๐Ÿ‡ฏ๐Ÿ‡ต Tokyotyoโœ“โœ“โœ“โœ“
๐Ÿ‡ฎ๐Ÿ‡ช Dublindubโ€”โœ“โœ“โœ“
๐Ÿ‡ธ๐Ÿ‡ฌ Singaporesgpโ€”โœ“โœ“โœ“
๐Ÿ‡บ๐Ÿ‡ธ Salt Lake Cityslcโ€”โœ“โœ“โœ“
๐Ÿ‡ฑ๐Ÿ‡น ล iauliaisqqโ€”โœ“โœ“โœ“

Submission and reads don't have to share a metro, so a submitter in sgp reading from tyo is a normal arrangement.

Choosing a region

Measure from the host that's actually going to run the client:

curl --silent --output /dev/null \
  --write-out 'connect=%{time_connect}s total=%{time_total}s\n' \
  --header 'content-type: application/json' \
  --data '{"jsonrpc":"2.0","id":1,"method":"getSlot"}' \
  'http://fra.corvus-labs.io:8899'

Sample it under traffic that looks like yours, and read time_connect against time_total before you pick a metro.

Regional failover

Failover is built into the endpoint. We health-check every regional host's backends, and when they degrade we serve you from the nearest healthy region instead: same hostname, same credentials, nothing to do on your side, whether or not you rent the region that steps in. Expect the extra round trip while it lasts.

Renting a second region yourself buys your own redundancy, a separate network path from your infrastructure or a warm standby for the metro your traffic depends on. Access stays per endpoint either way, so dialing the hostname of a region you haven't rented gets 401 / -32002 Unauthorized.

Live connections don't survive a backend switch: sockets, Yellowstone channels and aRPC streams all reconnect and re-register every filter. On Yellowstone gRPC you can replay the gap with from_slot (replay on reconnect); WebSocket and aRPC have no replay, and aRPC's sequence is connection-local and restarts from zero. For a transaction in flight, check the signature before you resend (Transactions).

On this page