You are previewing Moving Applications to the Cloud on the Microsoft Azure™ Platform.
O'Reilly logo
Moving Applications to the Cloud on the Microsoft Azure™ Platform

Book Description

This book is the first volume in a planned series about the Windows® Azure™ platform and focuses on a migration scenario. It introduces a fictitious company named Adatum which step-by-step modifies its expense tracking and reimbursement system, aExpense, so that it can be deployed to Windows Azure. Each chapter explores different considerations: authentication and authorization, data access, session management, deployment, development life cycle and cost analysis.

Table of Contents

  1. Moving Applications to the Cloud
  2. Foreword
  3. Foreword
  4. Preface
    1. Who This Book Is For
    2. Why This Book Is Pertinent Now
    3. How This Book Is Structured
    4. What You Need to Use the Code
    5. Who’s Who
  5. Acknowledgments
  6. 1. Introduction to the Windows Azure Platform
    1. The Windows Azure Platform
    2. Windows Azure Compute
    3. Windows Azure Storage
      1. Blobs
        1. Block Blobs
        2. Page Blobs
      2. Windows Azure Drives
      3. Windows Azure Tables
      4. Windows Azure Queues
    4. SQL Azure
    5. Management Services
    6. Windows Azure Subscription and Billing Model
      1. Estimating Your Costs
    7. More Information
  7. 2. The Adatum Scenario
    1. The Adatum Company
      1. Adatum’s Challenges
      2. Adatum’s Goals and Concerns
      3. Adatum’s Strategy
    2. The aExpense Application
      1. The aExpense Architecture
  8. 3. Phase 1: Getting to the Cloud
    1. The Premise
    2. Goals and Requirements
    3. Overview of the Solution
    4. Inside the Implementation
      1. Creating a Web Role
      2. Securing aExpense
      3. Managing User Data
      4. Profile Data
      5. Connecting to SQL Server
        1. SQL Azure Connection Timeout
        2. Handling Dropped Connections
      6. Diagnostics
    5. Setup and Physical Deployment
      1. Role Instances, Upgrade Domains, and Fault Domains
      2. Deployment Scripts
      3. Using a Mock Issuer
      4. Converting to a Production Issuer
      5. Isolating Active Directory
      6. SQL Server
      7. Accessing Diagnostics Log Files
    6. More Information
  9. 4. How Much Will It Cost?
    1. The Premise
    2. Goals and Requirements
    3. Overview of the Solution
      1. Bandwidth Cost Estimate for aExpense
      2. Windows Azure Storage Estimate for aExpense
      3. Compute Estimate for aExpense
      4. SQL Azure Storage Requirements Estimate
    4. Variations
    5. More Information
  10. 5. Phase 2: Automating Deployment and Using Table Storage
    1. The Premise
    2. Goals and Requirements
    3. Overview of the Solution
    4. Inside the Implementation
      1. Automating Deployment to Windows Azure
      2. Storing Business Expense Data in Windows Azure Table Storage
      3. How Many Tables?
      4. Partition Keys and Row Keys
      5. Query Performance
      6. Transactions in aExpense
      7. Working with Development Storage
      8. Retrieving Data from Table Storage
      9. Materializing Entities
    5. More Information
  11. 6. Phase 3: Uploading Images and Adding a Worker Role
    1. The Premise
    2. Goals and Requirements
    3. Overview of the Solution
    4. Inside the Implementation
      1. Uploading and Saving Images
      2. Abstracting the Worker Role
      3. “User Code” in the aExpense Application
      4. The “Plumbing Code” Classes
        1. Processing the Images
        2. Making the Images Available Using Shared Access Signatures
    5. More Information
  12. 7. Application Life Cycle Management
    1. The Premise
    2. Goals and Requirements
    3. Overview of the Solution
    4. Setup and Physical Deployment
      1. Windows Azure Environments
        1. Production and Staging Areas
      2. Deployment
      3. Testing
    5. More Information
  13. 8. Phase 4: Adding More Tasks and Tuning the Application
    1. The Premise
    2. Goals and Requirements
    3. Overview of the Solution
      1. Initiating the Data Export Process
      2. Generating the Export Data
      3. Exporting the Report Data
    4. Inside the Implementation
      1. Generating the Expense Report Table
      2. Exporting the Data
    5. Performance Testing, Tuning, To-Do Items
      1. Storing Session State
      2. Too Many Calls to the Createifnotexist Method
      3. Preventing Users From Uploading Large Images
      4. Validating User Input
      5. Paging and Sorting on the Default.Aspx Page
      6. System.NET Configuration Changes
      7. WCF Data Service Optimizations
    6. Implementing Paging with Windows Azure Table Storage
    7. More Information
  14. A. Creating a Cloud Project in Visual Studio
    1. Creating a New Cloud Project in Visual Studio
    2. Understanding the Projects in the Solution
      1. The Cloud Service Project
      2. The Web Role Project
      3. The Worker Role Project
  15. B. Using the Windows Azure Service Management API
  16. C. Using the Windows Azure Service Management CmdLets in a 64-bit Environment
  17. D. Using DNS with Windows Azure
  18. E. Windows Azure Storage Management Tools
    1. Windows Azure Management Tool (MMC)
    2. Windows Azure Storage Explorer
  19. F. Creating a Self-Signed Certificate for Testing
  20. Glossary
  21. Index
  22. About the Authors
  23. Copyright