Ashwin Ravindranath, McAfee,
Cloud services like AWS, Azure, GCP etc make developing business applications simpler and faster. However, assuring scalability, availability, and performance, particularly in cloud applications, continues to be a challenge.
In this paper, we present our learnings, strategies and methodologies from developing a micro services based application on AWS. Our micro-service oriented solution uses several AWS services such as Lambda, S3, Cloud Front, Route 53, API Gateway, RDS and DynamoDB. In addition, the solution spans multiple independent development teams, code repositories and an external SaaS provider.
Our paper discusses ways and means to ensure quality in cloud applications, specifically, scale, performance, and availability. We present best practices for managing the complexity of orchestrating multiple services, testing them in multiple environments, leveraging a CI/CD pipeline, automation, seamless updates and upgrades.
We have solved these problems by combining a variety of tools and technologies to achieve our infrastructure, testing, and quality goals. We intend to talk in detail about how our continuous deployment and integration process works simply without compromising on quality.