CLOUD COMPUTING FUNDAMENTALS Overview of Cloud Computing History Essence of Cloud Computing Elasticity On and Off Mode Rapid-Growth Mode Availability Fault Domain Update Domain Scalability Microsoft Azure Overview IaaS (Infrastructure as a Service) PaaS (Platform as a Service) SaaS (Software as a Service) Cost Calculation Preparing the Development Environment for Microsoft Azure Subscribe to Microsoft Azure Install Software Development Kit Introduction of Microsoft Azure Management Portal Sign In Page Layout Summary Building Websites on the Cloud Microsoft Azure Websites Website Deployment and Upgrade Integration with Source Control Systems Scaling of Websites Vertical Scaling Horizontal Scaling Autoscaling Migrating Existing ASP.NET Website Azure Websites Runtime Environment Data Storage Session States Website Gallery Website Configuration Website Diagnostics and Monitoring Website Diagnostics Website Monitoring Custom Domain Names Summary Cloud Service Fundamentals Microsoft Azure Cloud Services Cloud Services and Roles Role Cloud Service Basic Steps of Cloud Service Deployment Cloud Service Deployments and Upgrades Incremental Updates (Update Domain Walk) Simultaneous Updates Multiple Deployment Environments Instances and Load Balancing Instances Load Balancing Configuration File and Definition File Cloud Service Definition File (.csdef) Cloud Service Configuration File (.cscfg) Summary Advanced Cloud Service Endpoint Types Input Endpoint Internal Endpoint InstanceInput Endpoint Worker Role Worker Role Application Scenarios Inter-Role Communications Options for Inter-Role Communication Role Lifecycle Process of Deploying and Launching a Role Instance Role Instance Statuses Startup Tasks Defining Startup Tasks Startup Task Properties Diagnostics and Debug Debugging Locally Microsoft Azure Diagnostics IntelliTrace Monitoring Cloud Service Developer Community Summary Data Storage: Relational Database Microsoft Azure Data Storage Solutions SQL Database Overview Differences between an SQL Database and an SQL Server SQL Database Management and Optimization SQL Server Management Studio Microsoft SQL Server Data Tools Dynamic Management Views Query Optimization Data Sync and Migration Data-Tier Application Data Sync Periodically Backup Your SQL Databases Use MySQL Database Microsoft Azure Store Purchasing MySQL Service Other Means to Run MySQL Summary Data Storage: Storage Services Local Storage Overview of Microsoft Azure Storage Services Microsoft Azure Storage Account Provisioning a Windows Storage Account Storage Account Access Keys Using BLOB Storage Blob Storage Overview Block BLOB and Page BLOB ETag and Snapshots REST API Shared Access Signature and Stored Access Policies BLOB Update, Copy, and Lease Error Handling Using Table Storage Table Storage Overview Optimizing Data Partition Query Table Data Other Operations Batch Operations Dynamic Table Entities Shared Access Signatures Use Queue Storage Queue Storage Overview Programmatically Operate Queues Monitor Storage Accounts Configure Storage Service Monitoring Cost of Service Monitoring Summary Virtual Machines and Virtual Networks Microsoft Azure IaaS Disk Images and Virtual Disks Virtual Machine Communications Virtual Machine Endpoints Virtual Machines under the Same Cloud Service Virtual Networks Virtual Networks Overview Point-to-Site Virtual Network Site-to-Site Virtual Network ExpressRoute Summary CLOUD SOLUTIONS Cloud Solution Architecture Client/Server Characteristics of Client/Server Architecture Benefits Shortcomings Client/Server Architecture on Cloud Multitenant System Design Migrating Client/Server Systems to Cloud Client/Server Systems on Microsoft Azure Mobile Clients Browser/Server Characteristics of Browser/Server Architecture Browser/Server Architecture on Cloud Difficulties of Adapting an Existing Single-Tenant Browser/Server Application for Multitenancy Host Single-Tenant Systems on Microsoft Azure for Multiple Tenants n-Tiered Architecture Characteristics of n-Tiered Architecture n-Tier, MVC, and MVVM Microsoft Azure Service Bus Queue Implementing n-Tiered Services on Microsoft Azure Distributed System Message-Based Connections Relayed Connections Summary High-Availability Design Availability High-Availability Techniques Redundancy Load Balancing Failover Load Balancing and Health Probe Competing Consumers Loose Coupling Dynamic Load Balancing Dynamic Scaling Failover Case Study: High-Availability Service Bus Entities Background Segmented Message Pipelines Paired Namespaces Conclusion Summary High-Reliability Design Reliability, Availability, and Maintainability Reliability Maintainability Relationships between Availability, Reliability, and Maintainability Embracing Failures Failures in Operation Failures in State Management Failures in System Design and Implementation Transient Errors Transient Fault Handling Application Block Design for Reliability Single Point of Failure Writing Reliable Code Summary High-Performance Design Microsoft Azure In-Role Cache Overview Deployment Options Cache Features Concurrency Modes Local Cache Session State Microsoft Azure Cache Service Overview Cache Service versus In-Role Cache
Zen of Cloud : Learning Cloud Computing by Examples on Microsoft Azure