Build large-scale, mission-critical hardened applications on the Azure cloud platform. This 2nd edition provides information on the newer features in Azure, such as Linux extensions and supporting Azure Services such as HDInsight and SQL Server on Linux. Updated with new applications Hardening Azure Applications also discusses Scale Sets (VMSS), a major upgrade that enables autoscaling and seamlessly makes machines ready for high availability.
The authors take you step by step through the process of evaluating and building applications with the appropriate hardness attributes. After a small introduction to cloud computing, you will learn about various cloud and hardened cloud applications in detail. Next, you will discover service fundamentals such as instrumentation, telemetry, and monitoring followed by key application experiences. Further, you will cover availability and the economics of 9s. Towards the end, you will see how to secure your applicationand learn about the modernization of software organisations, a new topic in this edition.
After reading this book, you will master the techniques and engineering principles that every architect and developer needs to know to harden their Azure/.NET applications to ensure maximum reliability and high availability when deployed at scale.
You will:
- Use techniques and principles to harden Azure/.NET applications
- Secure your applications on Azure
- Create a scale set on Azure
- Work with service fundamentals such as instrumentation, telemetry, and monitoring
Autorentext
Suren Machiraju is an Innovator with over 20 patents relating to Electronic Document Interchange and Transport Protocols. He is a global team's manager with 10+ years' experience in leading and mentoring engineering teams, with substantial experience in vendor management, multi-site and globally distributed teams. He also has 15+ years' experience in delivering software as server (Premise) and Azure (Public Cloud) platforms including 10+ ship/release cycles at Microsoft. Suren enjoys sharing his knowledge and experiences with the community and has authored multiple books around large scale application development.
Suraj Gaurav is a Cloud Leader working with Microsoft in Greater Seattle area. He has 12 years' experience in building large scale services and software systems. He has worked in Microsoft for the last 10 years in various groups including O365/Exchange Online, Commerce Platform and BizTalk server.
Inhalt
Chapter 1: Introducing the Cloud Computing Platform
Cloud and Platform
Relevance of the Cloud Platform
Cloud Platform Benefits
Your Application and Cloud Platform Matchup
Does Your Application Belong on the Cloud Platform?
On-premises and Cloud Platform Integration
Heterogeneity of the Cloud Platform
Trust and Security
Cloud Platform Services
Compute Services
Networking
Storage and Data Services
App Services
Summary
Chapter 2: Cloud Applications
Cloud Application and Platforms
What's aaS?
Platform Types
Infrastructure-as-a-Service (IaaS)
Platform-as-a-Service (PaaS)
Software-as-a-Service (SaaS)
Other Cloud Application Platforms
Cloud Web Services
Cloud Managed Services
Cloud Application Deployment Models
Public Cloud Platform
Private Cloud
Hybrid Cloud
Summary
Chapter 3: Hardened Cloud Applications
Hardened Applications
Hello World vs. Real World?
Real-World and Hardened Applications
Availability
Reliability
Scalability
Recoverability
Security
Low Latency
Modern Organization
Engineering
Support
Summary
Chapter 4: Service Fundamentals: Instrumentation,
Telemetry, and Monitoring
Instrumentation
Best practices for Designing the Instrumentation
High-value and High-volume Data
Event Tracing
Azure Diagnostics
Telemetry
Best Practices for Designing Telemetry
Monitoring
Typical Monitoring Solutions
Best Practices for Designing Monitoring
Vendor and Third-Party Solutions
Summary
Chapter 5: Key Application Experiences: Latency,
Scalability, and Throughput
Latency
Factors That Affect Latency
Best Practices
Scalability
Scaling Up
Scaling Out
Best Practices
Throughput
Best Practices
Summary
Chapter 6: Failures and Their Inevitability
Case Studies of Major Cloud Service Failures
Azure Blob Storage Failure
Amazon Web Services FailureMeasuring Failures
Failure Categories
Hard Failure
Soft Failure
Gray Failures
Preparing for Failure
Design for Failure and a Quick Recovery
Minimizing Human Error
Summary
Chapter 7: Failures and Recovery
Design Best Practices
Failure Domains
Loose Coupling
Scale-Out to More, and for Cheaper
Testing Best Practices
Sandboxing
Scenario Testing
Failure-Detection Strategies
IaaS Virtual Infrastructure
PaaS Application
Databases
Storage
Network
Strategies for Recovery
Dev-Test-Ops Organization
Remote Script Execution
Summary
Chapter 8: High Availability, Scalability,
and Disaster Recovery
High Availability
Asynchronous Messaging
Atomic and Idempotent Services
Graceful Degradation
Offline Access
Scalability
Implementation Patterns
Disaster Recovery
PaaSSQL Offering
PaaSStorage
IaaSSQL Server as a Virtual Machine Offering
Summary
Chapter 9: Availability and Economics of 9s
Economics of 9s
Economics of (Non)-Availability
Computing Availability
Monitoring Availability
Enforcing Availability via SLA
Designing fo...