Wix Cuts Costs, Increases Website Performance Using Amazon EC2 Spot Instances
Business owners know that having an online presence is critical, but for many, building that presence is difficult and frustrating. That’s where web development platform Wix comes in. Wix strives to empower its more than 180 million users in 190 countries to create elegant, professional websites with no coding skills needed. And when Wix seeks to further streamline its platform, it turns to Amazon Web Services (AWS) to provide the necessary compute capacity to support it.
One of Wix’s recent undertakings involved speeding up its users’ websites in a scalable way with server-side rendering (SSR). This was a costly prospect for such a widely used platform. However, the company found a powerful but cost-effective solution using Amazon Elastic Compute Cloud (Amazon EC2) Spot Instances, which it used in conjunction with container orchestration platform Kubernetes to help its platform scale increased speed for end users.
Being able to deploy all this capacity to Amazon EC2 Spot Instances enabled us to significantly improve the performance of Wix sites.”
More Speed for Less
Founded in Tel Aviv, Israel, in 2006, Wix quickly became a leader in DIY web development due to its versatility and ease of use. As the number of users grew into the tens of millions, it became clear that the company’s legacy on-premises compute solution wasn’t going to keep pace. “When you’re working with an on-premises environment,” says Wix systems engineer Dimitri Krassovski, “you can’t really get hardware fast, and you have to plan ahead.” In 2015, in anticipation of its continued growth, Wix began migrating its workloads to Amazon EC2 instances, which provide secure, resizable compute capacity in the cloud, and it hasn’t looked back.
When the idea came along to introduce SSR—a means of prerendering that vastly reduces load times—Wix looked to its cloud service provider, AWS, for a solution. Because the amount of reserved compute capacity needed to reliably deliver SSR would be costly, Amazon EC2 Spot Instances—which take advantage of unused Amazon EC2 capacity at up to a 90 percent discount compared to On-Demand Instance prices—stood out as an attractive choice.
Integrating Amazon EC2 Spot Instances with Kubernetes
Amazon EC2 Spot Instances are available at a discount because the capacity would otherwise go unused, and when that capacity is needed for On-Demand customers, AWS reclaims it for them. This makes Amazon EC2 Spot Instances well suited for fault-tolerant, containerized workloads. That’s where Amazon EC2 Auto Scaling—which helps users maintain application availability and automatically add or remove Amazon EC2 instances according to predefined conditions—and Kubernetes step in. “We went through all the incarnations of Amazon EC2 Spot Instances and warehouse management until we ended up with Amazon EC2 Auto Scaling groups and Kubernetes on top of them,” says Krassovski.
Kubernetes is a popular open-source container orchestration system for automating application deployment. “Amazon EC2 Spot Instances are capacity providers,” says Krassovski. “They join the cluster, and you can deploy stuff there, and it will work. Kubernetes doesn’t know and doesn’t care that those can suddenly go away.” Amazon EC2 Spot Instances help Wix save 57 percent in comparison to On-Demand costs for the same workload.
To satisfy the compute demand for its SSR workload, Wix relies on multiple types of Amazon EC2 Spot Instances, as Kubernetes doesn’t require a consistent type of capacity to deploy applications. “One thing that Kubernetes enables you to easily do is actually have a really big variance in your instance types and sizes because it schedules based on the instance capacity,” says Krassovski. “You don’t really need to think that those instances are too large or those instances are too small here because it will find something that can run and try to fill them optimally.”
Having a Backup Plan
The benefits of Wix’s Amazon EC2 Spot Instances–Kubernetes architecture are clear and immediate. “Being able to deploy all this capacity to Amazon EC2 Spot Instances enabled us to significantly improve the performance of Wix sites,” says Krassovski. “Since we moved to SSR, the pages load much faster when they’re prerendered.”
Even when Amazon EC2 Spot Instances capacity is not available in a specific Availability Zone, sites still load, and there’s no downtime for the end user. The SSR feature doesn’t deploy, but the impact is limited. To maintain visibility and monitor capacity, Wix also takes advantage of Amazon CloudWatch, which helps users detect anomalous behavior in environments, take automated actions, troubleshoot issues, and discover insights to keep applications running smoothly. “We see disruptions very, very rarely and only in the most requested regions,” says Krassovski. “Since we are actually able to still serve traffic even with zero Amazon EC2 Spot Instances capacity, we’re fine.”
Diversifying through Amazon EC2 Spot Instances
Upon seeing the success of Amazon EC2 Spot Instances for the SSR workload, Wix has sought out other ways to apply the discounted idle capacity, including for business-intelligence workloads and for continuous-integration builds. Krassovski sees an even bigger role for Amazon EC2 Spot Instances on the horizon: “We are in discussions to diversify between Availability Zones and move a big part of our capacity to Amazon EC2 Spot Instances so we can offset the savings.”
One thing about the whole experience that has really stood out to Wix is the level of support AWS provides. “On AWS, you can build tremendous products without ever writing a line of code or deploying a single server. It’s an amazing company,” Krassovski says. “Having a Technical Account Manager who is almost always available to you and sometimes even onsite, someone who knows your business, knows your use case, knows what you do and what your issues are, and can track your case—it’s a really, really big selling point for AWS.”
Because of the support the company receives from AWS, Wix is able to support its end users with new features like SSR that make building a website fast and easy. “We used to say Wix is a website builder,” says Krassovski, “but it has become so much more. It’s basically a huge platform to build your online presence.” Innovation amplifies innovation. Wix uses AWS solutions to make an online presence accessible to more people, and Wix’s users can thus make themselves more accessible to their customers.
Founded in 2006, Wix provides cloud-based DIY web development with a platform that makes it easy for users to create websites and customize them with no coding skills needed. The platform supports more than 180 million users in 190 countries.
Benefits of AWS
- Achieved 57% savings in comparison to On-Demand costs for the same workload
- Experiences zero downtime when capacity is reclaimed
AWS Services Used
Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers.
Amazon EC2 Spot Instances
Amazon EC2 Spot Instances let you take advantage of unused EC2 capacity in the AWS cloud. Spot Instances are available at up to a 90% discount compared to On-Demand prices.
Amazon EC2 Auto Scaling
Amazon EC2 Auto Scaling helps you maintain application availability and allows you to automatically add or remove EC2 instances according to conditions you define.
Companies of all sizes across all industries are transforming their businesses every day using AWS. Contact our experts and start your own AWS Cloud journey today.