Live Services Summary

Damir Dobric Posts

Next talks:

 

    

Follow me on Twitter: #ddobric



 

 

Archives

At the PDC 08 Microsoft has announced many new technologies. The good thing is that the general strategy seems to incorporate all these technologies in the unique global strategy. Disadvantage of this strategy might be that such kind of big-bang could confuse people in term of understanding dependencies between all these technologies (including Microsoft employees).

This post is related to live services strategy and it should explain most important topic behind live services.

What is Live Services?

“Live Services” is set of building blocks for handling user data and application resources which can connect one application to huge number of users. Huge number means several hundred millions of users. For example 500E+06 users.

What services are included in Live Services?

1. Identity Services
Enables managing of identities for users, devices and applications.

2. Directory Services
Enables management of associations between principals.

3. Storage Services
Scalable storage for storing of metadata and blobs.

4. Comms & Presence Services
Enables Communication and presence including pub/sub features.

5. Search & Geospatial Services

What is Mesh Services?

Mesh Services extends (meshefies) Live Services to provide more powerful capabilities around data in four specific dimensions: Users, Devices, Applications and Synchronization.
The Live Framework behind Mesh provides developers symmetric API on the client and in the cloud and easy way to build application eco-system.

Architecture of Live Services including Mesh Services

clip_image002

What can I do with Mesh?

Mesh enables you to easily deal with:

1. Devices
Registered devices in your Mesh Desktop

2. Mesh Objects
Pretty anything you can add to device desktop (Pictures, recordings, Music etc)

3. Data Feed Files
Collection of files of files one Mesh Object. For example collection of pictures of the Mesh Object “My Pictures” (which is a kind of folder.)

4. News
News is a kind of eventing subsystem in the mesh related to Mesh Object. Several actions in the mesh like adding of the file results in one news item. Note that additionally to news there are also notifications, which can be client or cloud based.

5. Media Resources
Binary data of an item in the collection of items (feed) of one mesh object.

6. Contacts
People in the mesh.

7. User Profiles
Keeps information about user’s profile. For example user’s interests, which can be used to build social graph?

8. Members
The list of people which share a Mesh Object.

Live Framework Resource Model?

clip_image004

How to describe Mesh in three words?

“Feed of feeds”

Live Operation Framework

This is the runtime which hosts Live Services and all required functionalities behind the scene (analytics (who does what – it might be interesting for the billing in the future J), caching, synchronization etc.).

There are two versions of Live Operation Framework: Cloud Operating Environment and Client Operating Environment. If you take a look on the resource model, this operation environment is the root of everything in the “Live Universe”.

What application can be developed by using of Mesh?

The Mesh and Live Services is in interesting and innovative platform which enable building of applications we probably have never seen before. This will give us a possibility to think about totally new scenarios in the near future.
To give you some idea how Microsoft thinks about this here are some examples:

1. Devices
Connecting of different devices and sharing of data between them.

2. Social and Community Sites
Seamlessly integrate social applications across invites, news feeds, local devices experiences, and more

3. Web to the client
Enables offline experience by pushing of the content to the client.

4. Client to the web
Service enabled client applications.

The Big Picture

clip_image006

The biggest picture without Mesh focus

Following picture shows the strategy place of Live Services in the Windows Azure idea.

clip_image008

Live Framework for Developers?

1. Live Framework (liveFX)

2. Live Framework API

3. Live Framework .NET Kit

What are Life Framework API Kits?

Kits are a set of libraries which can be used to program LiveFx. Currently there are few kits like .NET 3.5 API-s, Silverlight API-s and JavaScript API-s. Moreover they also offer several Client Controls and Wev Controls.

For example Life Framework .NET Kit exposes the core Live Services in a cohesive and consistent way. It makes dealing with Live Services easy and natural for .NET developers and provides a symmetrical programming model between client and server.

Following example shows how to connect to Live Operative Environment, which is the very first step in by developing of such applications:

NetworkCredentials creds = new NetworkCredentials(username, pwd, endpoint);
LiveOperatingEnvironment loEnv = new LiveOperatingEnvironment();
loEnv.Connect(creds);

Note that connection in this example is established to the cloud environment to address https://username.windows.net.
The API provides additionally a connection to the local environment too, which is a kind of the copy of the cloud environment. (Note that following example does not use credentials.)

LiveOperatingEnvironment loEnv = new LiveOperatingEnvironment();
loEnv.ConnectLocal();


Posted Nov 20 2008, 08:21 AM by Damir Dobric
developers.de is a .Net Community Blog powered by daenet GmbH.