Using AWS services

AWS makes available a bunch of ready-to-use services that you can integrate into your application. Leveraging existing services can help reduce the infrastructure, you need to maintain, scale, and pay for, while getting the benefits of scalability and high-availability out of the box. In most cases, this will result in a leaner and more efficient architecture. For example, use Amazon RDS, DynamoDB, ElastiCache for Redis or Amazon Redshift instead of running your own databases. Similarly, use Amazon Elasticsearch service instead of setting up your own Elasticsearch cluster. This strategy makes a lot of sense as AWS has experts for each service who have loads of experience running these services at scale on the cloud.

There are additional operational costs associated with system and database administration tasks. For example, there are costs associated with DB upgrades, including taking backups, creating rollback plans, running applications in a staging environment, migrating to the production environment, and testing, verifying, and releasing the application, and so on. A switch to RDS significantly lowers the time, effort, and costs of such upgrades. Also, doing a more granular scale out of a table in DynamoDB instead of the whole MongoDB cluster that allows you to scale for what you need to scale and not the whole cluster underneath, thereby saving you time and money.

A good side effect of pushing things to AWS services is that it helps you pick the right service for the job. In most modern applications, there isn't one database solution that meets all the different and specialized requirements of your application. For example, choosing the data storage for your application can involve several different decisions based on your specific requirements. You can select DynamoDB as the Key/Value store for scalable throughput and low latency storage requirements. Amazon Aurora for more complex relational data and queries. Amazon Redshift for big (complex) data with higher latency and ElastiCache for Redis as a in-memory store with very low latency. 

If your applications are too small for using auto scaling, you leverage Amazon EC2 Container Service to save on those very small applications. You can consolidate your processing needs with Amazon ECS. ECS is designed to be used with other AWS services; it is extensible and secure; and it provides performance at scale.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.76.250