Engineering Resilient Systems on AWS - Helion
ISBN: 9781098162382
stron: 348, Format: ebook
Data wydania: 2024-10-11
Księgarnia: Helion
Cena książki: 220,15 zł (poprzednio: 255,99 zł)
Oszczędzasz: 14% (-35,84 zł)
To ensure that applications are reliable and always available, more businesses today are moving applications to AWS. But many companies still struggle to design and build these cloud applications effectively, thinking that because the cloud is resilient, their applications will be too. With this practical guide, software, DevOps, and cloud engineers will learn how to implement resilient designs and configurations in the cloud using hands-on independent labs.
Authors Kevin Schwarz, Jennifer Moran, and Dr. Nate Bachmeier from AWS teach you how to build cloud applications that demonstrate resilience with patterns like back off and retry, multi-Region failover, data protection, and circuit breaker with common configuration, tooling, and deployment scenarios. Labs are organized into categories based on complexity and topic, making it easy for you to focus on the most relevant parts of your business.
You'll learn how to:
- Configure and deploy AWS services using resilience patterns
- Implement stateless microservices for high availability
- Consider multi-Region designs to meet business requirements
- Implement backup and restore, pilot light, warm standby, and active-active strategies
- Build applications that withstand AWS Region and Availability Zone impairments
- Use chaos engineering experiments for fault injection to test for resilience
- Assess the trade-offs when building resilient systems, including cost, complexity, and operational burden
Osoby które kupowały "Engineering Resilient Systems on AWS", wybierały także:
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
- Ruby on Rails. Ćwiczenia 18,75 zł, (3,00 zł -84%)
- Przywództwo w świecie VUCA. Jak być skutecznym liderem w niepewnym środowisku 58,64 zł, (12,90 zł -78%)
- Scrum. O zwinnym zarządzaniu projektami. Wydanie II rozszerzone 58,64 zł, (12,90 zł -78%)
- Od hierarchii do turkusu, czyli jak zarządzać w XXI wieku 58,64 zł, (12,90 zł -78%)
Spis treści
Engineering Resilient Systems on AWS. Design, Build, and Test for Resilience eBook -- spis treści
- Preface
- Conventions Used in This Book
- Using Code Examples
- OReilly Online Learning
- How to Contact Us
- Acknowledgments
- From Kevin
- From Jennifer
- From Dr. Nate
- I. Foundations
- 1. Introduction
- People, Processes, and Technology
- The Role of People
- The Role of Processes
- Integrating People, Processes, and Technology
- Shared Responsibility Model
- AWS Responsibility
- Customer Responsibility
- Setting Objectives
- Business impact analysis and risk assessment
- Resilience goals
- Recovery objectives
- The three Ms
- Workload Architecture
- AWS Resilience Analysis Framework
- AWS Well-Architected Framework
- High availability
- Disaster recovery
- Disaster recovery strategies
- Multi-region considerations
- Networking
- Quotas
- Change Management
- Failure Management
- Observability
- Continuous Testing and Chaos Engineering
- CI/CD and Automation
- Continuous Resilience
- Setting Objectives
- Summary
- People, Processes, and Technology
- 2. Prepare Your Working Environment
- Hands-on Learning with Microservices
- AWS Account and Permissions
- Choosing a Development OS and IDE
- Git and Code Samples Repository
- Python Environment
- NPM and Node.js
- AWS CDK
- Additional Software
- AWS CLI
- Python Packages
- Vue.js and Vite
- Bootstrap CSS
- Artillery.io
- curl and watch
- Boto3
- PostgreSQL
- Lambda Powertools
- Docker Desktop
- Custom Domain and Route 53 Hosted Zone
- Security
- Encryption in Transit
- Encryption at Rest
- Authentication and Authorization for API Endpoints
- Tokenization
- Code Scanning
- Cleaning Up
- Summary
- II. Reliable Trading Portal
- 3. Frontend Web Application
- Technical Requirements
- Architecture Overview
- Deploying the AWS CDK Application
- Using an Amazon CloudFront Domain
- Amazon CloudFront
- Amazon Simple Storage Service
- Amazon Route 53
- Implementing Observability
- Injecting Failure Modes
- Introducing Excessive Load
- Preventing excessive load with rate limiting
- Injecting excessive load
- Implement AWS Web Application Firewall with rate limiting
- Rerun excessive load experiment
- Observe successful mitigation
- Introducing Excessive Latency
- Balancing caching and resilience for consistent latency
- Injecting excessive latency
- Observing excessive latency
- Rerun excessive latency experiment
- Observing the impact of caching on resilience
- Addressing Single Points of Failure
- Enhancing resilience through redundancy and fault tolerance
- Simulating a single point of failure
- Observing the single point of failure
- Implementing Amazon CloudFront origin failover
- Observing successful mitigation
- Introducing Excessive Load
- Cleaning Up
- Summary
- 4. Serverless Account Open API
- Technical Requirements
- Architecture Overview: An AWS Serverless Approach
- Deploying the AWS CDK Application
- Sunny Day Scenario
- Strongly Typed Service Contracts
- Idempotent Responses
- Self-Healing with Message Queue Retries
- Rate Limiting: Throttle Unanticipated Load
- Surviving a Poison Pill
- STOP: Business Continuity Regional Switchover
- Returning to Business as Usual
- Blue-Green Testing
- Cleaning Up
- Summary
- 5. Containerized Trade Stock API
- Technical Requirements
- Architecture Overview
- Deploying the AWS CDK Application
- VpcStack
- TradeDatabaseStack
- TradeOrderStack
- TradeConfirmsStack
- Prepare the Database
- Container Deployment Failures
- Database Connection Exhaustion
- Database Password Rotation Login Failures
- Database Primary Writer Failures
- Dependency Intermittent Failures
- Detecting and Handling Availability Zone Issues
- Dependency Outages
- Cleaning Up
- Summary
- 6. Integrated AvailableTrade Frontend with APIs
- Technical Requirements
- Architecture Overview
- Deploying the AWS CDK Application
- Automating AvailableTrade Endpoint Configuration
- Integrating AvailableTrade Microservices
- Configuring Client Timeouts
- Gracefully Degrading Features
- Real User Monitoring
- X-Ray for End-to-End Tracing
- Cleaning Up
- Summary
- 7. When Recovery Is Required
- Architecture Overview
- Deploying the AWS CDK Application
- Deploy the AWS CDK Trade Stock Stack in Secondary Region
- Deploying the AWS CDK Orchestration Stack
- Integrating Backend API to Frontend
- Validating the Region
- Database Failover and Switchover
- Failover
- Switchover
- Scaling Compute
- Routing at the Lambda Layer
- DNS Failover
- Importance of Backups
- Avoiding Configuration Drift
- Failover Verification
- Cleaning Up
- Summary
- III. Discovering Trading Opportunities
- 8. Real-Time Market Data Analytics
- Technical Requirements
- Designing a Reliable Data Ingestion Layer
- Role of Apache Kafka in Data Ingestion
- Designing the Kafka Topic Structure
- Securing the Kafka Cluster
- Implementing Reliable Consumers
- Ensuring Fault Tolerance and Scalability
- Consumer Groups and Record Processing
- Handling Invalid Messages
- Dealing with Downstream Dependencies
- Integrating Consumers and APIs
- Creating the Connection
- Designing Consumer State
- Implementing State Management
- Handling Concurrency
- Using Restartability
- Storing and Querying Processed Market Data
- Handling Firehose Failure Modes
- Querying Athena
- Optimizing Data Storage and Querying Performance
- Monitoring and Observability
- Testing Resiliency
- Cleaning Up
- Summary
- 9. Building Reliable News Feed Ingestion and Search APIs
- Technical Requirements
- Fetching and Processing News Articles
- Producer-Consumer Pattern for Article Processing
- Leader Election for Scheduler High Availability
- Scheduler Configuration Failure Modes
- Additional Resiliency Strategies
- Syncing Articles to OpenSearch
- Serving Search Traffic
- Cleaning Up
- Summary
- 10. Building Resilient Multi-Region Architectures
- The Business Case for Multi-Region Architectures
- Multi-Region Database Architectures
- Understanding Consistency Models
- Replication Strategies
- Handling Conflict Resolution
- Multi-Region Streaming Architectures
- Replicating Kafka Data Across Regions
- Handling Active-Active Kafka Deployments
- Streaming Data to Other Destinations
- Multi-Region Search Architectures with OpenSearch
- Cross-Region Data Replication with OpenSearch
- Other Data Replication Options
- Caching in Multi-Region Architectures
- Summary
- 11. Putting It All Together
- Reviewing Core Concepts
- Reliability Frameworks
- Failure Modes with Reliability Patterns
- Connecting the Key Learnings
- Leading Resiliency Initiatives: Cultivating a Culture of Resilience
- Nurturing the Seeds of Resilience
- Becoming the Go-To Resilience Guru
- Sharpening Your Resilience Radar
- Embracing Continuous Resilience
- Making Resilience a Daily Habit
- Looking to the Future
- Navigating the Multicloud and Hybrid Cloud Landscape
- Harnessing AI for Resilience
- Embracing Chaos Engineering
- Leveraging Observability
- Summary
- Reviewing Core Concepts
- Index