How AWS Transformed a Customer-Centric Solution

No alt text provided for this image

Security, Elasticity, Scalability and Cost-Effectiveness are the primary goals of any cloud solution. We started with that idea I had to say it was a great experience. We were able to utilize the AWS service and truly develop a global solution that deliver customer satisfaction, while being presence in the region with low latency and high performance.

Selecting a DB

We had to solve few different problems and while implementing this Solution. first problem was that we had to overcome selecting the right data source or should I say database. While selecting the database we had to compare several different options with no SQL databases and relational databases. it is a hard choice when we go into solutioning, selecting the right database whether it is no SQL or relational databases because the implications of the cost. If you don't understand the running cost of the database you will not be able to be successful in achieving the cost effectiveness of the solution. Especially when you select a pay as you go database services you really need to think about your data write and data reads. But managed database services are high performance and lower latency and cost then traditional old self-managed databases (Traditional self-managed databases will add support, maintenance and monitoring cost as overheads.)

No alt text provided for this image

In our exercise of selecting the database we have decided to go with Dynamo DB with global tables this is a great choice in terms of our solution and what it needs to achieve in the long run. We needed to Lower the operational cost of the database while improving the performance and reliability so Dynamo was the right choice. 

Our considerations for the DynamoDB :

  • Scalability: DynamoDB was expressly designed to scale (theoretically) infinitely maintaining super low latency access to data. Using a globally distributed network of caching servers, static content is served as if it is local to users
  • Serverless: It gives the customer the ability to focus more on its business value instead of spending resources and time maintaining an on-premise server;
  • Ease of backups: No matter how many hundreds of terabytes of data the tables contain, backups are completed without performance hits nor downtimes;
  • In-memory cache: DynamoDB Accelerator permits micro-seconds latency access to data for particular use cases;
  • ACID support: Make it perfect for business-critical applications.

Designing the services :

When we started to design the services, Now we had to decide whether we should do microservices or not. In this day of age it is crazy not to do microservices, the problem with microservices is there is no definition for it or even a particular pattern that you could do microservices. Though people say there is a pattern it is only applicable for the given organization so each organization has to find their own way with microservices. Be ready to fail be ready to refine be ready to continually refine until you achieve perfection with microservices. 

Before microservices we need containers. This is interesting, in AWS you need to assess ECS or EKS orchestrating containers. I don't want to give a big explanation on this there are plenty of Internet articles you can read about EKS VS ECS so let me cut this short we decided to go with EKS as it is Kubernetes. it was a simple choice and it was easy decision, in terms of management and scalability though ECS fargate is more managed and hands-off but we are hoping at some point fargate will come to EKS as well. If you are not following the news fargate is coming to AWS EKS as soon. and we hope to leverage fargate on EKS as soon as it is available.

Front END :

This was an angular application we had to do multi-az, multi-regional implementation and deployment for the application with CDN, So we can push the updates as often as we desired.

Elasticity and Scalability :

We have fail-over in each availability zone and regional fail-over for the entire solution. At any given point of time any fail-over at multi-az level or regional level will not hamper user experience as the data is always available and served through the closest region or availability zone based on proximity to the user.

Benefits and Wins :

This was an extremely cost effective solution in terms of reducing the operational cost of the overall solution. It reduced the infrastructure footprint by 70% for the traditional solution (On-Prem). Overall cost savings for the solution compared to a traditional solution was 60% of the cost. It basically reduced the number of support cases the number of maintenance windows and the number of monitoring components that was needed for the overall solution.

Takeaways

  1. Leveraging the EKS eliminated the need to run VM’s in cloud.
  2. Cost effective DB solution with ACID grantee and with managed replication eliminated the need to implement and maintain DB sync across regions, Plus reduce the complexity and cost of monitoring,support and maintenance
  3. Auto fail-over with ELBs and Route 53 has reduce the effort in traditional F5 configurations and other complexities
  4. Using SQS and Lambda has reduced the number of component that would need in a traditional on-prem solution 

https://www.linkedin.com/in/mindil20031/


Comments

  1. Mindika : Great insights on how AWS transformed into a customer-centric solution! keep it up.

    ReplyDelete
  2. Mindika: Interesting details on how AWS changed to become a customer-centric solution. Thanks for sharing.

    ReplyDelete

Post a Comment

Popular posts from this blog

Mindika Bio

SQL vs NoSQL

Google APP Engine Changed Our Lives