Here is some recommended reading:
Introduction .NET Services Platform
Access Control Service
SQL Data Services
Mesh-enabled web applications
Introducing Windows Azure
http://download.microsoft.com/download/0/C/0/0C051A30-F863-47DF-BC53-9C3CFA88E3CA/Windows Azure David Chappell White Paper March 09.pdf
Intro to .NET Services
The Fabric was explained early on. The fabric controller coordinates this pool of servers. The fabric controller talks to the Agent, which is a piece of code running in a pool of servers.
The code we will create is a web role.
- Web role: A web role is a Web application accessible via an HTTP and/or an HTTPS endpoint. A web role is hosted in an environment designed to support a subset of ASP.NET and Windows Communication Foundation (WCF) technologies.
- Worker role: A worker role is a background processing application. A worker role may communicate with storage services and with other Internet-based services. It does not expose any external endpoints. A worker role can read requests from a queue defined in the Queue service.
- Windows Azure Blob – provides storage for large data items.
- Windows Azure Table – provides structured storage for maintaining service state.
- Windows Azure Queue – provides asynchronous work dispatch to enable service communication.
- Storage Account – An application must use a valid account to access Windows Azure Storage. You can create a new account via the Windows Azure portal web interface. The user will receive a 256-bit secret key once the account is created. This secret key is then used to authenticate user requests to the storage system. The signature is passed with each request to authenticate the user requests.
Table – contains a set of entities. Table names are scoped by the account. An application may create many tables within a storage account.
- Entity (Row) – Entities (an entity is analogous to a “row”) are the basic data items stored in a table. An entity contains a set of properties. Each table has two properties, namely the “PartitionKey and RowKey” that form the unique key for the entity.
- Property (Column) – This represents a single value in an entity.
- PartitionKey – The first key property of every table. The system uses this key to automatically distribute the table’s entities over many storage nodes.
- RowKey – A second key property for the table. This is the unique ID of the entity within the partition it belongs to. The PartitionKey combined with the RowKey uniquely identifies an entity in a table.
- Timestamp – Every entity has a version maintained by the system.
- Partition – A set of entities in a table with the same partition key value.
- Sort Order – There is a single index provided for the CTP, where all entities in a table are sorted by PartitionKey and then RowKey. This means that queries specifying these keys will be more efficient, and all results are returned sorted by PartitionKey and then by RowKey.
Some people believe .NET Services are the most interesting part of the Azure services platform.
High level goal for .NET Services
Biztalk for the cloud.
The Microsoft® .NET Access Control Service helps you avoid the complicated programming that is normally required to secure applications that extend beyond organizational boundaries. With its support for a simple declarative model of rules and claims, Access Control Service rules can easily and flexibly be configured to cover a variety of security needs and different identity-management infrastructures.
The Microsoft .NET Service Bus makes it easy to connect applications together over the Internet. Services that register on the Bus can easily be discovered and accessed, across any network topology. The Service Bus provides the familiar Enterprise Service Bus application pattern, while helping to solve some of the hard issues that arise when implementing this pattern across network, security, and organizational boundaries, at Internet-scale.
The Microsoft .NET Workflow Service is a high-scale host for running workflows in the cloud. It provides a set of activities optimized for sending, receiving, and manipulating HTTP and Service Bus messages; a set of hosted tools to deploy, manage and track the execution of workflow instances; and a set of management API’s. Workflows can be constructed using the familiar Visual Studio 2008 Workflow Designer.