What this book covers
Chapter 1, Cloud 101 – Understanding the Basics, describes basic cloud concepts including the public, private, and hybrid cloud models. We explain and compare the Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS) cloud service delivery models. In addition, we explain multi-tenancy models and the challenges they present in design, implementation, and operations.
Chapter 2, Designing Cloud Applications – An Architect's Perspective, describes familiar and not-so familiar architectural best practices in the cloud context. These include designing a multi-tier architecture and designing for multi-tenancy, scalability, and availability. We will also guide you through the process of estimating your cloud computing costs.
Chapter 3, AWS Components, Cost Model, and Application Development Environments, introduces you to the AWS components—EC2, S3, RDS, DynamoDB, SQS Queues, SNS, and so on. We will discuss strategies to lower your AWS infrastructure costs and their implications on architectural decisions. We will explain the typical characteristics of the Development, QA, Staging, and Production environments on the AWS cloud.
Chapter 4, Designing for and Implementing Scalability, provides guidance on how to define your scalability objectives, and then discusses the design and implementation of specific strategies to achieve scalability.
Chapter 5, Designing for and Implementing High Availability, provides guidance on how to define your availability objectives, discuss the nature of failures, and then discuss the design and implementation of specific strategies to achieve high availability. In addition, we will describe the approaches that leverage the AWS features and services for your Disaster Recovery planning.
Chapter 6, Designing for and Implementing Security, provides guidance on how to define security objectives, explains your security responsibilities, and then discusses the implementations of specific best practices for application security.
Chapter 7, Deploying to Production and Going Live, provides guidance on managing infrastructure, deployments, support, and operations for your cloud application. In addition, we provide some tips on planning your production Go-Live activities.