Dan Rigsby – Coding Up Style

Developer.Speaker.Blogger

Microsoft PDC 2008 – A Lap Around Windows Azure

Posted by Dan Rigsby on October 27th, 2008

A Lap Around Windows Azure

This session was previously called “A Lap around Could Services”, but the title was updated after the Windows Azure announcement.  This session is setup to answer two questions:

  1. What is Windows Azure?
  2. What are the key features?

DSC03208The “cloud” is defined as:

  • Set of connected servers
  • On which developers can:
    • Install and run services
    • Store and retrieve data

As we all know, an Operating System is an open platform that provides: an application execution environment, a shared file system, threading support etc.  Up until now the “Cloud” has bee missing an OS which treats applications as services to provide functionality to users and developers. Windows Azure is an Operating System for the cloud and as such it provides:

  1. Abstract execution environment
  2. shared files system
  3. resource allocation
  4. programming environments
  5. 24/7 operation
  6. pay for what you use
  7. simpler, transparent administration

Components of the Platform

  1. Automated Service Management
    • The platform follows the rules
  2. A powerful service hosting environment
    • All of the hardware: servicers load balancers
    • Virtualized and direct execution
  3. Scalable, available storage in the cloud
    • Blobs tables and queues
  4. A rich, familiar developer experience

DSC03206

Automated Service Management

What’s in a model?

  • Service topology and size
  • health constraints
  • Configuration settings

Develop and model your service, then just deploy and run it!

Maintaining the service health has been made easy.  The goal is to keep a service responsive and healthier even during failures and upgrades.  This is done by providing a level of abstraction where a service declares logical resources in the model.  APls allow you to map logical resources to physical entities.  The service code in turn calls these APIs.

The bottom line is that there is a balance between the poser and ease of use.  You can write well behaved services to reduce your total cost of ownership.  There is a way out.  You can program in “raw” mode by which you can build your own VM and manage the service yourself!

Scalable, Available Storage in the Cloud

Azure provides simple and essential storage abstractions to use:

  • Large: blobs, file streams, etc
  • Service state: simple tables, etc
  • Service communication: queues, locks, etc

There is an emphasis on:

  • Massive scale, available, and durability
  • Geo Distribution

Rich, familiar Developer Experience

There is a simulated could service environment on the desktop that supports asp.net, .net languages, native code, PHP, etc.  There will be a number of tools and support such as: Visual Studio, Eclipse.  Logging Alerts and Tracing will be also be available to make debugging and maintaining your application easier.

Putting it all Together

Windows Azure is a simple architecture for scalability.  It is designed to encourage best practices:

  • Stateless compute + durable storage
  • Co-location of computation and data
  • Queues for asynchronous processing

Windows Azure is an open platform to connect outbound to any server and a set of open protocols and APIs on all components.

DotNetKicks Image

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>