Rapid growth is a great thing for any company. With companies who have heavy AWS usage, the positivity of this growth comes with one common caveat: with increased growth comes increased AWS infrastructure costs. For GumGum, the company’s incredible success saw cost increase rapidly, as the demands on their highly scalable infrastructure grew.
In their largest datacenter, GumGum’s Ad Server received around 4 million requests per minute at low traffic points. For peaks, this number grew to over 18 million – needing over 130
c5.9xl machines to be provisioned. This meant costs grew for GumGum to around $120k per month for EC2, on just one of their four Ad Server datacenters.
The first option explored by GumGum to reduce their costs was to commit to a large number of
reserved instances (RIs). These RIs could be purchased in advance for a discounted rate, but the scalability of GumGum’s workloads meant that this solution wasn’t suitable.
As RIs have to be bought in advance, GumGum had two options:
Neither continued high costs or underutilized RIs were viable solutions to GumGum’s problems. This is why they looked at Spot. Spot instances would allow complete scaling flexibility at high discounted rates, yet the lack of SLA or application stability would have to be addressed.
When GumGum looked for a solution to help them utilize spot instances, they knew it needed to fulfill 3 criteria:
Spot was able to meet all GumGum’s needs, offering a fully managed service for provisioning existing applications on spot instances. Simultaneously, Spot’s ability to predict and preempt spot terminations meant that the availability of applications running on these instances could be guaranteed. Spot even backs this guarantee with an SLA. As for the UI: “it’s a great interface, simple, concise and clear. All you’d ask for and need, perfect,” said GumGum Software Engineer, Chanel Chang.
Apart from the clear benefits of huge cost reductions, GumGum also experienced the additional benefit of Spot’s default Blue/Green deployments for CodeDeploy. Before using Spot, GumGum was doing in place deployment through
CodeDeploy. In place deployment is when the application on each instance in the deployment group is stopped, the latest application revision is installed, and the new version of the application is started and validated. This results in needing to take out a certain percentage of existing instances to deploy to. This removal of instances from their load balancers meant that GumGum could be faced with capacity drops and production issues.
Spot deploys CodeDeploy through a
Blue/Green deployment process. This is where a new set of instances are provisioned with the updated application version. Traffic will then be redirected from the existing set of instances (running the old application) to the new set, after which the old instances are terminated.
Utilizing Blue/Green deployments with Spot has reduced GumGum’s deployment time by over 50%, leading to a huge increase in capacity for their developer teams.
“Through a simple integration process, Spot has helped us to save money and increase productivity” – Vaibhav Puranik, SVP of Engineering at GumGum.
GumGum specializes in applying computer vision to improve the way that companies interact with the wider world. This comes in three main fields: Advertising, Sports and Social. For advertising, GumGum provides contextual marketing messages in line with content users are actively engaged with. For sports, they increase understanding of the value which sponsorship and investment brings across social and broadcast media. With social, GumGum analyzes visual media across the world in real time.https://gumgum.com/
for up to 20 instances