The Problem Every day, a new Sitecore project is delivered somewhere in the world. Thousands of developers, architects, consultants, and agencies help organizations implement Sitecore. But ultimately, who pays for all of it? The business. How do business stakeholders such as content authors, marketers, product owners, and technology leaders know they received value for their investment? More importantly, how do they know that a Sitecore project delivered at high speed over a few months will not become a long-term maintenance burden once the implementation partner has moved on and the support contract has ended? In theory, having a technically competent person with software architecture experience act as a gatekeeper for the client should be enough. In reality, however, Sitecore is about much more than code. It involves data modeling, information architecture, SEO, governance, content authoring experience, and platform best practices. Sitecore itself contains many concepts that have the...
Recently, a fellow Sitecorian connected with me to discuss an interesting performance issue with a Sitecore JSS application running on Next.js and Vercel. The application was working perfectly fine for normal URLs. However, when users accessed the website through marketing or advertising URLs containing multiple query string parameters, the requests started taking significantly longer and eventually failed. The interesting part was that the same page worked perfectly when the query parameters were removed. Let's understand what was happening and how to fix it. The Problem The application was using Sitecore JSS with Next.js and hosted on Vercel. Normal URLs were working as expected: https://www.example.com/ Even URLs with a few query parameters were working: https://www.example.com/?p1=1&p2=2&p3=3&p4=4&p5=5 But when the number of query parameters increased, the request started taking much longer and eventually failed. In some cases, we were seeing errors such as: 504...