▶Book Description
Whether you're just getting your feet wet in cloud infrastructure or already creating complex systems, this book will guide you through using the patterns to fit your system needs.
Starting with patterns that cover basic processes such as source control and infrastructure-as-code, the book goes on to introduce cloud security practices. You'll then cover patterns of availability and scalability and get acquainted with the ephemeral nature of cloud environments. You'll also explore advanced DevOps patterns in operations and maintenance, before focusing on virtualization patterns such as containerization and serverless computing. In the final leg of your journey, this book will delve into data persistence and visualization patterns. You'll get to grips with architectures for processing static and dynamic data, as well as practices for managing streaming data.
By the end of this book, you will be able to design applications that are tolerant of underlying hardware failures, resilient against an unexpected influx of data, and easy to manage and replicate.
▶What You Will Learn
- Implement scaling policies on schedules, influxes in traffic, and deep health checks
- Make complete use of highly available and redundant storage
- Design content delivery networks to improve user experience
- Optimize databases through caching and sharding
- Apply patterns to solve common problems
- Implement repeatable processes for deploying systems
▶Key Features
- Build highly robust systems using the cloud infrastructure
- Make web applications resilient against scheduled and accidental downtime
- Explore and apply Amazon-provided services in unique ways to solve common design problems
▶Who This Book Is For
If you're an architect, solution provider, or DevOps community member looking to implement repeatable patterns for deploying and maintaining services in the Amazon cloud infrastructure, this book is for you.
You'll need prior experience of using AWS understand key concepts covered in the book, as it focuses on the patterns rather than the basics of using AWS.
▶What this book covers
- Chapter 1, Introduction to Amazon Web Services, briefly introduces you to AWS, where you will not only learn about the background and industry shift that started the movement into utility computing, but also where AWS fits into it.
- Chapter 2, Core Services – Building Blocks for Your Product, introduces you to various AWS components that you will use to build your products.
- Chapter 3, Availability Patterns – Understanding Your Needs, combines some of the components into architectures aimed toward creating your own highly available services.
- Chapter 4, Security – Ensuring the Integrity of Your Systems, covers some of the best security practices that will allow you to establish a perimeter around all of your products from the start.
- Chapter 5, Continuous Deployment – Introducing New Features with Minimal Risk, covers some of the practices that you can use to provide a continuous deployment pipeline, which will enable you to put your product in front of your clients quickly and in a reliable and reproducible way, whether this includes new product features, experiments, or configurations.
- Chapter 6, Ephemeral Environments – Sandboxes for Experiments, supplies a design pattern to aid you in your move to the cloud. The financial benefits, the advantages for your customers, and the improved velocity of your software engineers will be considered. Some high-level topics that are making headlines in the DevOps movement and can improve our productivity within AWS will also be covered.
- Chapter 7, Operation and Maintenance – Keeping Things Running at Peak Performance, combines various processes that will help you to deliver a product with high availability and ensure that, in the event of a disaster, you have practiced your recovery methods.
- Chapter 8, Application Virtualization – Using Cloud Native Patterns for Your Workloads, shows how to isolate services for performance improvements and cost savings. You will inspect the choices available for reducing product complexity and review enterprise patterns for mitigating failures through the separation of concerns
- Chapter 9, Antipatterns – Avoiding Counterproductive Solutions, attends to the difficulties you might encounter as your product complexity grows.
- Chapter 10, Databases – Identifying Which Type Fits Your Needs, helps identify how to collect and learn from data that can help you avoid anomalies that haven't been widely encountered in the cloud yet.
- Chapter 11, Data Processing – Handling Your Data Transformation, discusses various techniques for processing the data in your infrastructure, especially in the field of machine learning.
- Chapter 12, Observability – Understanding How Your Products Are Behaving, covers how to observe your application with logging, metrics, and tracing, which will help you track changes in your infrastructure, find inconsistencies, and provide insights into process improvements.
- Chapter 13, Anti-Patterns – Bypassing Inferior Options, analyzes persistence paradigms, that are ineffective and may result in undesired consequences.