Engineering calls offer our community a glimpse into the hard work our engineers are doing to build Lava — the community-led standard for blockchain RPC and APIs. It’s important for us to provide transparency into our progress, and to open the floor to questions and feedback from our community.
On the latest call we discussed:
Here’s a short Summary!
With this new feature, Providers are able to select the number of concurrent node connections they want to initiate, using a simple flag. These connections are between their provider client and their RPC nodes for the chains they support. Giving Providers the ability to have better control over the number of connections allows for improved latency and faster response time, which contributes to the overall efficiency of the network.
Additionally, our Provider client now includes an automatic load-balancing mechanism, designed to detect heavy loads and to increase the number of connections in its pool, as needed to handle the increased traffic. When the load decreases, the Provider will automatically lower the number of connections, conserving resources and ensuring optimal performance.
Q: How does it enhance Lava’s scalability?
A: Optimizing each Provider increases the amount of total requests Lava can serve. This feature is estimated to improve scalability by 10x or more.
Q: Are there further scalability features planned in the future?
A: Future scalability features include aggregation of transactions (grouping multiple relay payments in one transaction), and spreading payment requests over time instead of concentrating them at the beginning of each epoch — which will significantly lower gas fees, and increase the success rate of transactions on the Lava blockchain.
Cosmos chains have a feature called State Sync, which allows a new node to join a network by fetching a snapshot of the application state at a recent height, instead of fetching and replaying all historical blocks. This can reduce the time needed to sync with the network from days to minutes.
A number of node runners from our community tried to use State Sync, but it caused their nodes to crash. This happened because our team designed Lava’s blocks to include less data than the standard Cosmos block, which increases Lava’s scalability, but affects Validators’ ability to use State Sync. More specifically, Lava’s blocks don’t contain enough previous block headers to be used by State Sync.
Q: How are we fixing this?
A: Our team is working to update the blocks to allow nodes to use State Sync. This will slightly increase the state size in order to store more headers every block state, but will improve the experience of node runners in our community.
We thank everyone for who attended, our Discord is always open for questions and support.