AWS for Industries
Three Steps for Modernizing Your DTC Ecommerce Website
I’ve spent more than 15 years working with many of the most innovative consumer brands to help them architect their ecommerce platforms. At AWS, my focus is helping consumer packaged goods (CPG) companies enhance customer experiences and gain operational efficiencies, especially with their direct-to-consumer (DTC) ecommerce websites. CPG customers regularly ask how they can realize the benefits of a cloud-based ecommerce platform, even with heavy investments in a legacy architecture. In this blog post, I’ll outline three strategies you can use to modernize your ecommerce website.
We all remember the typical legacy architecture for a DTC ecommerce website: a monolithic application deployed in an on-premises data center with a team of DBAs to manage and tune your massive website. It was costly, difficult to scale, and time-consuming to manage, especially during peak holiday shopping seasons. But I won’t go too deep into the memory bank. Instead, I’ll dive right into my three modernization strategies.
Strategy 1: Lift and shift your DTC ecommerce website to the cloud
Ecommerce sales have skyrocketed during the pandemic. If your applications are in a legacy on-premises or private cloud environment, your website might not have been able to handle the huge influx of online shoppers. Perhaps your IT team had to add server capacity. Although that solution might have worked in the short term, eventually you’ll max out your capacity limit or break your budget.
The solution to these challenges is to lift and shift to virtual servers. It’s a relatively painless first step toward modernization, and you’ll quickly realize these benefits:
- Cost savings—You can immediately take advantage of the AWS pay-as-you-go pricing model, so you don’t pay for servers you don’t use. Typically, our customers will use Amazon EC2 Reserved Instances (RI) for their baseline operations because these instances provide a significant discount (up to 72%) compared to On-Demand pricing. They will then use either Amazon EC2 On-Demand Instances or, if the workload permits, Amazon EC2 Spot Instances, which provide up to a 90% discount (vs. On-Demand pricing) for peak throughput.
- Scalability—With AWS Auto Scaling, you have the flexibility to scale server capacity in or out to keep pace with business fluctuations.
- Fault tolerance—Amazon EC2 Auto Scaling can detect when an instance is unhealthy and replace it with a new one. This eliminates the daily operational burden on your IT staff and increases the overall health and availability of your ecommerce site.
- Easy maintenance—Although your IT team might not be familiar with the AWS Cloud environment, they can maintain your ecommerce applications because you have simply moved the same applications to a new, more flexible server infrastructure environment.
Strategy 2: Decompose your ecommerce website and rearchitect it with microservices
After you’ve moved your DTC ecommerce website to AWS, there might still be many unrealized benefits, because you’re running a traditional monolithic application. And here’s the downside to leaving the legacy application architecture intact. Traditional ecommerce websites are composed of many core features that are all built into one big application. You cannot fix a single, isolated issue or deliver a new feature without redeploying the entire application. You have no choice but to use an all-or-nothing deployment strategy, and that effort can take your IT team hours or even days. On top of that, there’s a good chance something will break. And that means your IT team will need to spend even more time testing and troubleshooting to fix the issue. If your application is dependent on relational databases that aren’t scalable, you’re in for even more headaches and challenges when you grow your ecommerce business.
The strategy to overcome this challenge is to decompose your legacy ecommerce website and rearchitect your application with microservices. A microservices architecture allows you to build an application (in this case, for ecommerce) with independent components that run each process as a discrete service. These services communicate with each other through lightweight APIs. It’s essentially the opposite of a traditional monolithic ecommerce website, and as you can probably guess, there are many benefits:
- More flexibility to manage applications—You can isolate and fix issues without having to redeploy the entire solution.
- More resilient ecommerce website—This goes hand in hand with flexibility. When there’s an isolated issue, you don’t have to take down your entire application to fix it. You just need to fix the single component. This point is also important when you want to deploy new features on your ecommerce site. If the feature doesn’t work as expected, your entire website isn’t impacted. You can troubleshoot and resolve the issue with the single enhancement.
- Independent scalability—Because each microservice is designed to be completely independent with its own server and database capacity, you can scale individual processes instead of your entire application. For example, let’s say your company launches a new, very attractive loyalty program and you suddenly need to scale the server capacity and database for your loyalty microservice. You can scale the infrastructure services for that isolated process instead of adding more server and database capacity for your entire monolithic application.
There are two main technology stacks that can be used to realize this architecture: Amazon Elastic Kubernetes Service (Amazon EKS) and Amazon Elastic Container Service (Amazon ECS). Both provide a managed container orchestration service that natively supports a microservice architecture. They provide scalability, resiliency, and security.
There are many other benefits to microservices, but these are the highlights. By rearchitecting your ecommerce website with AWS microservices, you’ll be one more step down the road to application modernization. With that said, the process to rearchitect your website will take time and a sound strategy to prioritize the microservices that make up your application. Be sure to read my blog post (Use This Success Strategy to Move to a Microservice Architecture) where I outline a strategy to prioritize your microservices work effort.
Strategy 3: Move to serverless computing so you can focus on your business
After you’ve moved to a microservice architecture, consider using a serverless container architecture because it allows you to build more agile applications, so you can innovate and respond to change faster. In a serverless architecture, infrastructure management tasks, like compute capacity provisioning, are handled by AWS, so your IT team can focus on your core ecommerce business. Here are a few benefits of a serverless computing strategy:
- Save money—Its granular nature allows you to use compute services that closely match the resource requirements of your application. There is no overprovisioning and paying for additional servers.
- Scale automatically—The serverless model includes capabilities to automatically adapt to your ecommerce application needs. If there’s a sudden influx of orders because of a social media trend, your website can keep pace so you never miss a sale.
- Develop applications faster—Your development team can focus on the core business value: delivering a great ecommerce experience to your customers. AWS handles everything else (infrastructure provisioning, patching, and so on). This way, you can focus on building applications instead of configuring them.
- Enable your IT staff to innovate—Because your IT team won’t have to manage servers, they can spend more time exploring technology trends and experimenting with new technologies to drive more innovation at your company.
If you’re already using a microservices architecture, AWS Fargate is the natural serverless technology choice. It’s a serverless compute engine for containers that works with Amazon ECS and Amazon EKS. Fargate removes the need to provision and manage servers, lets you specify and pay for resources per application, and improves security through application isolation.
For more information, see Serverless on AWS: Build and run applications without thinking about servers.
These three strategies are sure to help you modernize your ecommerce applications, especially if you follow them in the sequence I’ve laid out in this post. Your journey to modernization will take some time, but before you know it, your company will realize these benefits and many more. After your ecommerce website is rearchitected with microservices on the serverless architecture, your IT team can run your DTC ecommerce website with agility and efficiency.
To learn more about AWS for CPG, contact your AWS account team.