(2024Q2) - Layer 1 - Public RPC endpoint supporting average 1k RPS
Public RPC endpoint supporting average 1k RPS
Team
@vect0r, @diana.savvatina, @ryan.tan3, @julien.t, @gabriel.moise (subject to update)
Motivation
The Octez node RPC interface is known to be a bit lame. Indeed, the UX is not very friendly, the documentation is sometimes outdated and it does not conform to the standard RPC APIs. Furthermore, it lacks maintenance and accumulates technical debt for years. Several bottlenecks or resource leaks are also known to be blockers. Many community users, service providers, wallets or indexers have been complaining about it for a while. This project aims to resolve some of the above issues and to propose a new RPC engine implementation (for a follow-up project) if some critical blockers cannot be fixed from implementation.
Scope
The scope of this project is manifolds. It aims to improve the RPC UX thanks to service providers/community feedbacks by conforming the RPC API standards, resolving issues that are considered as “low hanging fruits”. It also aims to understand and fix the known flaws, such as resources leaks, and improve the current RPC fragile components to make them scalable and non-blocking (as follow up project of %Non-Blocking RPCs). Finally, we will identify the bottlenecks of the current implementation and propose a complete RPC rehaul to improve the current situation, thanks to proof of concepts comparing various proposals. This may lead to switching to another RPC engine.
Documents
Work breakdown
Non-blocking RPC feature as experimental
See %Non-blocking RPC feature as experimental
Stabilize non-blocking RPC feature
See %Stabilize non-blocking RPC feature
Improve and consolidate RPC UX
See %Improve and consolidate RPC UX