E07: The Challenges and Massive Benefits of Refactoring
On this episode of Cloud Cost Optimization, Nick and Jason look at a real-world example of how to refactor an expensive, scale-out architecture.
On this episode of Cloud Cost Optimization, Nick and Jason look at a real-world example of how to refactor an expensive, scale-out architecture. The old architecture used virtual machines, which led to a lot of separate EC2 instances. The new architecture is designed to be more cost-effective and efficient.
They discuss the power of AWS and the sorts of architectural decisions that they had to make while refactoring. Then they dig into the difficulties of managing multiple EC2 instances for a single application and keeping track of the different versions of the software deployed across the different instances.
Refactoring the app due to multiple EC2 instances and incompatible versions AWS and the benefits of serverless and container architecture Implementing refactoring took 6 weeks in practice
Refactoring has a direct benefit to end users - Jason: "The end results to the customer is we went from providing them after signup or after integration, providing them with data in under two hours.
"Because it takes time to go collect all this data from the provider's environments to showing them data in under 10 minutes. Refactoring isn't just about cutting costs. It's not just about improving existing processes and potentially avoiding issues down the road, it's also about providing a better service."
Fixing bugs before they affect the customer Jason: "This bug was not transparent to the customer, but our engineering team said, Hey, we just had this sign up. This thing didn't work correctly. We've already fixed it."
"That would've never happened if we were still using virtual machines. Never happened. We were able to find that and fix it before a customer was affected, and that all came from this new pipeline that we developed."
Get to know our hosts in the links below:
About Nick About Jason
Get a free assessment and optimize your environment in: