From Challenge to Success with Blast: Our Experience with the Starknet Provisions Event

From Challenge to Success with Blast: Our Experience with the Starknet Provisions Event

Blast Team

6 min read

In a nutshell: It was a BLAST from start to finish! 

Braavos, one of the largest wallets on Starknet, and Blast’s client, experienced a surge in traffic starting immediately after the Starknet Provisions Event announcement on February 14th, 2024. As a Starknet infrastructure partner, we sprung into action. We formed a war room, and a comprehensive analysis was conducted with all stakeholders. By the 20th of February, when the Starknet Provisions event arrived, Blast had successfully scaled its infrastructure and implemented critical fixes in production, guaranteeing a seamless user experience for Braavos’s customers.

While the end-user experience remained seamless and efficient throughout the event, the complexity of the backend operations the Blast team had to sustain may not be readily apparent. This article delves into the technical details and efforts undertaken to ensure such an experience for the Starknet Provisions Event. Read all about our journey below. 

The Starknet Provisions Program

Starknet empowers developers to build complex and resource-intensive dApps at minimal cost through its custom-designed programming language, Cairo, and its user-friendly transaction signing with Account Abstraction. This fosters a thriving ecosystem of dApps with fast, affordable transactions and intuitive interfaces, all fueled by the STRK token actively distributed to the community to empower users and dApps. 

Announced on February 14th, the Starknet Provisions Program was created to reward the active Starknet Community with their STRK token. The token was to be claimed on Starknet Mainnet starting at 12pm (UTC) on February 20th, 2024.

The Starknet Provisions Event

Blast started to face an increase in requests load immediately after the Provisions Program was announced. The event announcement on February 14th sparked significant market interest, leading Braavos users to revisit their wallets and potentially engage in preparatory actions, driving a surge in requests. This surge led to noticeable delays in response times, prompting immediate action on our part to ensure a smooth experience for all users.

The graph below shows the moment the requests load started to increase and the latency during the announcement of the Starknet Provisions Event on February 14th. 

As the event unfolded, starting on the 14th of February, we established a war room, gathering all engineers to monitor the system in real-time. This proactive approach ensured we were fully prepared to address any issues immediately, guaranteeing a seamless experience during the Provision event.

Blast’s RPC infrastructure at that time consisted of Pathfinder Full Nodes, deployed over 4 geographical regions: 

  • US-East
  • US-West 
  • Europe
  • APAC

In response to the surge, we initiated a thorough analysis of the incoming traffic patterns in collaboration with the Pathfinder and Starknet teams. 

Analysis and Findings

Our analysis revealed that certain methods, notably starknet_traceTransaction, were using a significant amount of CPU time and the nodes would eventually start queuing up requests, leading to simple queries such as starknet_blockNumber taking a long time (up to 20 seconds).

While investigating the Pathfinder issues, we began exploring a different implementation by the Nethermind team, named Juno. The goal was to find if the issues were at the client implementation level, by comparing the performance of the two under the same load. Upon deploying Juno, we had to adjust the Juno codebase to be aligned and compatible with our existing architecture that relied on Pathfinder nodes. 

This adjustment was necessary because Juno was utilizing a different default RPC version, with the v0.5 version exposed on the /rpc/v0_5 path, unlike the /rpc/v0.5 path on Pathfinder. After our load test, we found out that the issue was not at the client implementation level, as both Pathfinder and Juno had similar performance metrics, which moved us closer to finding the solution.  

Finding the solution, Changing the strategy 

Our next step involved a strategic division of traffic based on methods and versions, organizing nodes into three categories: 

  • Light nodes – with read methods such as starknet_blockNumber or starknet_getBlockWithTransactions
  • Heavy nodes – with starknet_call, starknet_estimateFee, starknet_simulateTransaction methods 
  • Trace nodes – with starknet_traceTransaction, and starknet_traceBlockTransactions methods.

This segmentation was facilitated by our custom-built proxy, which supports extensive customization, allowing us to manage the load efficiently as well as improve the latency of the platform by keeping read requests fast so UI applications would feel responsive enough.

Recognizing the urgent need for expanded capacity, we also scaled our node infrastructure tenfold within a mere 24-hour window. This rapid expansion was a testament to our engineering team’s dedication and agility, enabling us to support up to 100k RPS per region just in time for the Provision event.

The graph below shows the latency across our worldwide node clusters during the Starknet Provisions Event on February 20th. Everything went smoothly; our average response time was around 104 milliseconds. 

Blast’s custom-built proxy and the rapid infrastructure scaling ensured a smooth user experience by:

  • Prioritizing read requests: This kept responses to common actions, like checking account balances or viewing transaction history, fast, making the UI feel responsive.
  • Increasing capacity: Scaling the infrastructure tenfold allowed the system to handle the surge in traffic efficiently, reducing the potential for delays and ensuring users could complete actions without encountering bottlenecks.

By implementing these solutions, our team effectively managed the increased load during the event, minimizing any potential impact on user experience and ensuring a smooth and responsive platform for everyone involved.

Our Experience during the Starknet Provisions Event

During the event, we experienced 10,000 Requests Per Second (RPS) for several hours, and our P95 latency remained under 500 ms for all light and heavy methods, ensuring that the Braavos clients and Starknet Provisions event participants made the best out of this experience. 

In the US-East region, our average response time during the Starknet Provisions event was around 39 milliseconds. The graph below provides more data on our RPC latency in the US-East.

*source: https://www.starknet-monitor.com/ 

In the Singapore region, our average response time during the Starknet Provisions event was around 118 milliseconds. The graph below provides more data on our RPC latency in Singapore during the event.

*source: https://www.starknet-monitor.com/ 

In the EU-West region, our average response time during the Starknet Provisions event was around 122 milliseconds. The graph below provides more data on our RPC latency in the EU-West region.

*source: https://www.starknet-monitor.com/ 

The Starknet Provisions Event unfolded as a testament to Blast’s team meticulous planning and flawless execution. Anticipating the surge, our team activated a dedicated war room, fostering seamless collaboration and ensuring rapid response. This proactive approach yielded lightning-fast transactions and imperceptible latency, guaranteeing a frictionless user experience.

It was also a tremendously valuable learning experience, demanding rapid thinking and agile response to maintain optimal user experience. The insights gained have bolstered our preparedness to manage high-traffic scenarios not only on Starknet but across all Blast’s supported networks, reinforcing our unwavering commitment to delivering exceptional service across the board.

“The Starknet Provisions Event marked a significant milestone for the Starknet ecosystem, attracting immense user interest. The surge in activity pushed everyone to their limits, but it was truly inspiring to see the incredible collaboration between the Blast team and those helping build Starknet. We were able to sync and work on solutions side-by-side, ensuring a flawless experience for the community. We’re grateful for the Blast team’s expertise and proactivity!“ 
Oded Naor, Product Manager and Blockchain Researcher at StarkWare

“As the fastest growing wallet on Starknet, Braavos played a pivotal role during the Starknet Provisions days, enabling countless users to claim and trade their STRK tokens swiftly and securely. Our commitment to providing an uninterrupted user experience and top-notch security on Starknet, despite the high load and stress, was supported by the robust RPC infrastructure provided by the Blast team. Their hard work and dedication were instrumental in ensuring the seamless operation of our platform during this extreme surge in user activity.”
Abraham Makovetsky, Braavos Founder

“The Starknet Provisions event was a baptism by fire, pushing our team to think on its feet and adapt quickly to ensure a seamless user experience. The lessons learned have strengthened our capacity to handle high-traffic events not only on Starknet but also across all the networks Blast supports. This commitment to continuous improvement ensures exceptional service remains at the core of everything we do.“
Matei Popp, Bware Labs Co-Founder and DevOps Technical Lead

Our team transformed a potential challenge into a resounding success. We stand proud, not just for our technical prowess, but for the unwavering dedication of our team, whose agility and foresight guaranteed a seamless event for Braavos and the broader Starknet community. This triumph underscores Blast’s position as a reliable and trusted partner, prepared to navigate any challenge within the ever-evolving blockchain landscape.

Dive deeper into our work on Starknet and gain further insights on blockchain infrastructure on our blog.

More articles

Ecosystem Deep-Dive: Nubit

Ecosystem Deep-Dive: Nubit

Nubit users can now join the Light Node Quest exponentially easier with Blast’s latest release: Node-as-a-Service for Nubit Network! This feature enables users to host their nodes on one of the leading infrastructure platforms in the Web3 space, with help from services that support some of the industry’s top projects.

Blast Team

3 min read
Ecosystem Deep-Dive: CARV

Ecosystem Deep-Dive: CARV

We are thrilled to introduce a new feature for CARV builders: Node-as-a-Service! This feature allows users to host their nodes on one of the top-performing infrastructure platforms in the Web3 space, leveraging services that power some of the industry’s leading brands.

Blast Team

4 min read