Proposal #123
OnFinality High Performance Public Infrastructure (Q2, 2023)
Democracy
0 Comments
Tabled

Proponent: a3byawr54JPxf1RpvnbLZPkZN2Q9Ry7gg5CXiqcvEtgPWvQM8

Date: 12th July 2023

Total Requested KINT: 4,304.6486 KINT

Original Discussion Post: https://interlay.subsquare.io/post/23

Short description: Ongoing costs for the running of high performance, scalable, and reliable public infrastructure for Interlay's Kintsugi Network.

Full Proposal: https://docs.google.com/document/d/1Ank_Z5Q7qgDPvco_UKBbA0XkSPf69bnNNPvz12W5J7U/edit?usp=sharing


Original Motivation

Setting up blockchain infrastructure is difficult, time consuming, and expensive:

  • It requires a level of server development expertise that many do not have

  • It's costly to run a full node nearly continuously, especially when your dApp's traffic is low and inconsistent. 

  • Running production level infrastructure is especially tricky. You need to autoscale quickly to handle bursty traffic, and you want to provide services in different regions around the world to provide low latency services - all of this is incredibly costly, but comes with significant economies of scale for a provider.

  • DevOps requires constant attention - time that would be better spent elsewhere building.

A shared node API service helps mitigate these barriers of entry to trying accessing a new protocol by reducing all these costs to near zero. We manage all the nodes for our users and distribute them across the world (with intelligent routing) to achieve global scalability from day 1, we monitor each node and ensure that they meet certain service levels, and we have the expertise and scale to handle production workloads and high peak traffic.

In summary, we try to reduce the pain of getting started on  Kintsugi Network and minimise the costs of accessing secure nodes while traffic from your dApp is low. When you grow, you can continue to use our shared API service, or we also provide access to one click deploy dedicated Kintsugi nodes  to any cloud of your choosing.

Background on our RPC Service

Since inception in November 2020 we have made a large number of improvements to our Ultimate API service focussing on three key areas; performance/reliability, providing more value from our Ultimate API service, and cost optimisation.

Performance/Reliability

OnFinality is operationally striving for a minimum of 99.99% reliability, which means less than an hour of downtime each year.  We proudly display and share our 90 day uptime statistics for each network publicly here.

We have invested hugely into a team dedicated to optimising our application gateway and caching layer to ensure that we provide the fastest possible service for our customers. We run clusters in 5 different regions (North Virginia, Frankfurt, Tokyo, Singapore, and Australia) and across 3 different cloud providers (AWS, GCP, Alicloud) to ensure that we are fault tolerant to any single region or cloud provider ceasing service.

Providing more value from our Ultimate API service

For customers that do sign up for paid API keys, we've been adding more and more features to provide a better experience. Geolocation insights provide statistics about where in the world communities are to help influence decisions around where to expand infrastructure and to view the effectiveness of regional BD initiatives.  We can also now automatically upsize the storage on nodes to prevent the risk of any downtime.

Finally, in Q2 of 2023 OnFinality launched Trace API support which was a huge enhancement allowing unprecedented visibility for dApp builders. Trace API captures and records vital information otherwise not available through regular RPC methods and extrinsics (such as complete XCM transfer records and complete list of balance changes). These APIs are essential in order for developers like Polkaholic to parse and understand XCM transactions.

Cost Optimisation

OnFinality is very conscious about providing a strong level of support for Interlay/Kintsugi  at an extremely competitive price. Cost saving measurement has been a significant focus on behalf of our customers, with advanced rate limiting controls implemented. We can, for example, rate limit each client on a burst and sustained basis and based on the request methods that they are calling (e.g. each state_traceBlock request is rate limited 45x more than chain_getBlock), read more about these advanced rate limiting tools that we've developed here.

Meaning that we can continue to provide generous public API endpoints for over 40 different networks for common-good applications, but restrict access to high volume users that abuse this free service. We've been able to manage our costs significantly on behalf of our customers as a result. 

We've developed and shared our approach towards service sustainability, with the introduction of a 'Paid API Revenue Share Discount' scheme. In this scheme OnFinality pools the revenue from customers that pay for higher API pricing plans and distributes this revenue pool to partners that currently pay for and own each API endpoint proportionally based on the number of paid API requests that go to that API endpoint. The scheme was introduced in Q1 of 2023 and resulted in a discount to Interlay's Q1 treasury proposal of $153.63.

Our cost optimisation efforts were validated in Q1 as we had the lowest cost per million responses across all of the major RPC providers that lodged a proposal to the Polkadot treasury. You can see how our costs compared to other RPC providers in the ecosystem during Q1 here.

Service Details

During Q2 of 2023, we've made a number of new improvements to our Ultimate API service that address performance/reliability, features, and costs.

Additionally, we are proud to have delivered some key service enhancements that benefit the Polkadot ecosystem in the last quarter. This includes:

  • Launched Trace API allowing unprecedented visibility for dApp builders. Trace API captures and records vital information otherwise not available through regular RPC methods and extrinsics (such as complete XCM transfer records and complete list of balance changes). These APIs are essential in order for developers like Polkaholic to parse and understand XCM transactions.

  • Geographical Insights - API key owners can view statistics about where in the world your community are to help influence decisions around where to expand infrastructure and to view the effectiveness of regional BD initiatives

  • Clarify our IP address handling - OnFinality does not, and will never, correlate or link specific wallet addresses to the IP address or request origin making the RPC request

  • Added support for a number of new networks, including Anmol, HydraDX, Equilibrium, as well as Osmosis, Evmos, Harmony, Arbitrum, Optimism, Fuse, DFK Chain, Celo, and Klaytn from outside the ecosystem. OnFinality is a new one stop shop for all of your RPC needs from multiple ecosystems.

  • A variety of improvements to our health metric collection tools and automated recovery scripts to ensure our 99.9% SLA is exceeded.

  • Scale improvements to our team, processes, and systems to allow us to provide this same service to any  substrate team

Our customers are building cross-chain wallets, running some of the largest block explorers, and are indexing multiple networks - they've all benefited from these API access restrictions, improved monitoring, and the larger number of supported Polkadot chains. You can always see live data on our API service on our public status page.

Costings

OnFinality provides a scalable and reliable public RPC API service for both Interlay and Kintsugi for a fixed price of $4,000 per calendar quarter. This is all inclusive of capital and operating expenses, administration time from OnFinality DevOps, onboarding costs, backup costs, and all other monitoring and right-sizing by our team.

In this proposal we request $4,000 for the services performed in Q2 of 2023 (April, May, June). As our services support both networks, each with similar usage, we will request $2,000 from the Interlay treasury and $2,000 from the Kintsugi treasury.

Read the full proposal here: https://docs.google.com/document/d/1Ank_Z5Q7qgDPvco_UKBbA0XkSPf69bnNNPvz12W5J7U/edit?usp=sharing

Edited
Reply
Up
Share
Second
No current seconds
This proposal has been turned into referendum.
  • Call
  • Metadata
  • Timeline2
Comments
There are no comments here