The xDai Stable Chain is nearing 2 years in production, with exemplary real-world use cases, an active developer community, and full EVM ecosystem compatibility and interoperability with Ethereum. It has been tested at large events (EthDenver) where it handled greater than expected loads with ease; securely processing thousands of transactions for only a few thousandths of a cent. xDai has a proven track record of security and scalability, and it is available for deployment today. While our solution may not be the fastest submitted, it’s still well within the requested benchmarks yet brings the peace of mind of dependability and resilience the competition simply cannot offer.
Load testing stats on xDai with Splunk blockchain observability tools
2 projects – 1 mission
The Great Reddit Scaling Bake-Off presented a unique opportunity for collaboration and we were excited to challenge ourselves within such a limited timeframe. Our solution was achieved on the xDai Stable Chain, a layer-2 sidechain which is 100% compatible with Ethereum. Real-time and historical data visualizations with custom dashboards were implemented in collaboration with Splunk. Through this joint effort, we were able to demonstrate a solution that is not only fast but efficient and inexpensive, on a tried and true network that’s in use at this very moment.
The challenge asked teams to handle the following transactions over the course of 5 days:
100,000 point claims (minting & distributing points)
75,000 one-off points burning
To meet this challenge, we ported over contracts and created a custom load script to simulate transactions for a single subreddit on xDai. We processed 300,000 transactions in under 4.5 hours, achieving 25X+ efficiency from the original requirements.
Reddit contracts were whitelisted resulting in 0 gas fees for transactions and contract deployment. In addition to the custom load script which tested chain capacity with TMOONs, we also created a continuous load script to simulate more natural transactional flows with TBRICKs.
Load test contract addresses on xDai:
Continuous load test contract addresses on xDai:
To explore scaling for hundreds of millions of users, we set up a modified chain called qDai with 1 second block times, 74M gas per block, and 150+ claim transactions per second. Using this configuration, we completed the load in 29 minutes, a 220X improvement from the requirements.
Contract addresses on qDai:
Please see our challenge gitbook where we organize our results, detail the processes, and address challenge requirements: Gitbook link
Splunk Team Collaborative Effort
The ability to monitor and assess blockchain data is vitally important for accessibility, transparency, and ultimately, adoption. The blockchain team at Splunk created a number of visual dashboards for the challenge to display transactions, block times, validators and all other relevant data on xDai. These dashboards give users the opportunity to find relevant patterns, troubleshoot node issues should they arise, and dig into both historical and real-time data.
The results of our load testing can be viewed using the custom Splunk dashboards created for the competition.
Usability and Interoperability
As mentioned above, the xDai Stable Chain is fully interoperable with the greater Ethereum ecosystem. In this section, we show how users can easily move MOON tokens to and from xDai using a custom plugin (Burner Wallet) connected to the TokenBridge architecture. We also are proud to spotlight community created tools by Austin Griffith, including the xmoon.exchange, and a multiplayer game in active development.
All transactions completed for the challenge are transparent on-chain and can be viewed using our very own xDai BlockScout explorer.
We’d like to thank Reddit for the opportunity to show off our technology as a ready-to-go solution for their challenge, and to participate with the Splunk team for a concerted effort in bringing an idea to production. We’d also like to thank any community members who have helped us reach this point and have given us valuable feedback throughout the process.