Continued from Willy’s Cave Dwelling Notes #1 – Cloud Computing, we continue our cloud journey by taking a quick glance at Windows Azure.
Interesting URLs
Terminology
- Virtualized computing platform providing infinite resources, to create secure, reliable, high-availability and scalable applications, using a multi-instance and stateless service design.
- Service architecture includes Web Role instances, Worker Role instances and queues that are the conduit between the roles.
- Roles
- Web Roles place data in storage and/or queues and are the user-facing part of the application.
- Worker Roles extract data from queues and/or storage and can be seen as background services.
- Fabric is the magic plumbing delivered by Windows Azure that makes it all happen.

Getting Started
- Install SDK
- Download Windows Azure x32 or x64 SDK Tools
- Creating Cloud solutions
- Visual Studio – Create Windows Azure Project
- Worker Role
- Life starts here: WorkerRole : RoleEntryPoint
- Sits in a loop in Run()
- Web Role: ASP.NET | ASP.NETMVC | CGI | WCF
- Life starts here: WebRole : RoleEntryPoint
- RoleEnvironment.GetConfigutaionSettingValue() reads service configuration file data
- Emulating Cloud solutions on your laptop
- Developer Fabric Emulator emulates the cloud platform
- Package | Unpackage | Run on local system as it would run in the cloud
Services

Storage Summary
| | Blob | | Table | | Queue | SQL Azure |
| Named | yes | | yes | | yes | yes |
| Data size | Block – 200GB Page – 1TB | | 100TB | | 8KB | 150GB |
| Structure | One or more containers, each containing one or more blobs | | Table with entities | | One or more queues with one of more messages | |
| Data types | Binary | | String, Byte[], Guid, DateTime, Int32, Int64, Double, Boolean | | XML | |
| Connect | http://account.blob.core.windows.net /container/blobname | | http://account.table.core.windows.net /tablename | | http://account.queue.core.windows.net /queuename | |
| Case sensitivity | Container name – all lowercase 3-63 Blob name – case sensitive 1-1024 | | Table – case insensitive 3-36 Entity – case insensitive 1-25 | | Queue – lower case 3-63 | |
| Unique | Container and Blob name | | Partition and Row key Name+Value pairs | | | |
| Notes | -
Blob Snapshots create non-modifiable backups. -
Use for documents, pictures, music, videos | | - Use for customer info, news, feeds, scores, …
- Partitions from multiple machines
| | - FIFO not guaranteed
- Unprocessed message is deleted after 7 days
| - Better than tables for complex queries
- Served from 1 primary replica
|
Compute Services
- WCF Services Web Role
- Windows Azure AppFabric ServiceBus
- Contained in Windows Azure AppFabric component
- Secure messaging relay between systems
- Negotiated direct connect
- … more details in a future post.
- Access Control Services (ACS)
- Contained in Windows Azure AppFabric component
More on these later …
TFS Service (TFS Preview) … and Windows Azure
Where does the TFS Preview store its data? Here is a slide that was presented at PDC:

To cut a very long story short, we use almost all of the storage technologies … SQL Azure, Azure blob storage and Azure table storage (for diagnostics).
References: