Alessandro Volpicella
Platform Engineering Lead, Hashnode
We needed caching for our API, we wanted to make sure our database didn’t go down, and we needed to be as performant as possible. That’s when we found Stellate.
Alessandro Volpicella
Platform Engineering Lead, Hashnode
Faster p50 API response time
Less API traffic
Learn how we helped Hashnode maintain SEO excellence while optimizing its API infrastructure. Or if you’re ready to dive in, set up Stellate’s GraphQL Edge Caching for your API.
Hashnode is a technology-focused blogging platform that empowers software developers to create, own, and share their content with a growing and like-minded global audience.
Since launching in 2020, the platform has quickly made a name for itself, attracting a vibrant community of more than 3 million monthly users focused on a wide range of trending technology topics.
Hashnode's popularity has primarily come from the hassle-free writing experience it provides its users while taking care of search engine optimization (SEO) and content distribution with their community platform and their public GraphQL API.
But this winning combo has also presented unique challenges as Hashnode has to maintain its high standard for performance and stability while its user base continues expanding to ensure their SEO stays strong.
With Stellate's GraphQL Edge Caching, Hashnode has ensured optimal performance, stability, and an excellent user experience. Here's how they did it.
To deal with all of these challenges, Volpicella and his team began going down the rest of their tech stack, which by now was utilizing Apollo Server, AWS with SST for deployments and infrastructure, Cloudflare for security, Next.js for server-side rendering, MongoDB Atlas for data storage, and TypeScript.
"But pretty quickly, the question became, how can we cache more than our server-side rendered pages to ensure the best performance and stability?" Volpicella said.
"We have a GraphQL API, and we need to cache it. And it's not that easy with GraphQL APIs. That's when we found Stellate."
While transitioning to GraphQL helped Hashnode simplify complex data relationships and optimize query performance, Stellate's GraphQL Edge Caching significantly improved page loading times, enhancing SEO and user experience. It also prevented MongoDB Atlas from overloading, ensuring platform stability during traffic spikes.
Stellate's GraphQL Rate Limiting was also applied on a per-user basis (JWT), safeguarding Hashnode's public API from misuse.
"The transition to GraphQL and Stellate has been pivotal in our success," Volpicella said. "It's allowed us to meet all our goals: boosting SEO, improving user experience, and ensuring security and stability."
Hashnode has also leveraged Stellate for capabilities beyond caching, including observability, alerts, and metrics reporting to gain insights into system performance and error handling.
This function has proven so valuable, Hashnode is even passing uncached requests through Stellate to gain that extra level of convenient, granular performance reporting.
"We're using the observability, alerts, and metrics to understand how our GraphQL APIs are performing, what operations are, how fast, and many of the more nitty-gritty details of our GraphQL APIs," Volpicella said.
Implementing GraphQL caching with Stellate has delivered tangible results for Hashnode, including enhanced SEO-driven growth, 96.0% faster p50 API response times, and 93.7% reductions in API traffic.
These improvements have not only contributed to a better user experience but also strengthened the platform with regard to the following:
Stability: MongoDB Atlas has remained stable, even during traffic spikes, eliminating downtime.
Security: Rate limiting has protected Hashnode's public API from misuse.
Operational Visibility: Stellate's observability and metrics capabilities have enabled real-time insights into GraphQL API performance and error patterns.
By leveraging GraphQL caching strategically, Hashnode optimized its developer blogging platform, achieving significant gains in performance, security, and user satisfaction, setting the stage for continued growth and innovation in the developer community.
Stellate is about peace of mind for your GraphQL API. Analytics and security features are included by default.
It takes less than 5 minutes to set up a fully functional CDN for your GraphQL API.