97% of internet traffic and 100% of user votes fall between 2 weeks in April. In this short period a website has to process 2,000,000 visitors and 750,000 votes.
The problems appeared during the contest’s final weeks: the website worked slow, users couldn’t vote because of server errors.
Byndyusoft worked in close cooperation with Microsoft on this project. We began to explore the problems by load testing. The tests showed that the website could handle only 150 requests per second but has to work with load peaks up to 2,000 requests per second.
An old monolithic architecture and non-cloud hardware blocked the ability to scale out website performance. There were no ways to satisfy new requirements with existing approaches.
Byndyusoft developed a new version of the website on microservice architecture and deployed it on Microsoft Azure. These changes gave the ability to scale in and scale out by mouse clicks even without a line of code. Microsoft Corporation helped by sharing the experience about pure PaaS features on Azure.
With this solution a contest owner can balance cloud resources depending on the contest phase. On the previous website an owner paid for the whole website every month because he couldn’t disable any services from Monolithic Architecture or sell a part of the hardware.
Byndyusoft developed the website and a vote service on .NET Core and used Akamai CDN to decrease response time for users.
The Miss Russia website works perfectly with 5,000 request per second. Our solution made the website 3 times less expensive and 40 times faster with new Microservice Architecture and Microsoft Azure.