Presentation is loading. Please wait.

Presentation is loading. Please wait.

 Abolade Gbadegesin Principal Software Architect Microsoft Corporation BB06.

Similar presentations


Presentation on theme: " Abolade Gbadegesin Principal Software Architect Microsoft Corporation BB06."— Presentation transcript:

1  Abolade Gbadegesin Principal Software Architect Microsoft Corporation BB06

2 Mesh Services IdentityDirectoryStorage Communications and Presence Search & Geospatial UsersDevicesSynchronizationApplications

3

4

5

6 User-data storage Accounts Notifications Communications & Presence Communications & Presence

7 device claim device claim device identity provisioned during software install provisioned during web sign-up 1 1 2 2 3 3 builds on Live ID authentication to capture user-device relationships

8 resource collection resource Uri EntityTag SubscriptionUri … Uri LastUpdateTime … resource link Uri Label … scope for grouping resources and tracking changes metadata common to all resources primitive for representing & navigating relationships represented as feeds and items 1 1 2 2 3 3 4 4

9 Mesh Service Accounts Live Mesh Client Accounts Live ID Service Live ID Client Runtime Library Live ID Client Runtime Library users, devices, apps (local cache) HTTP

10 mesh object local file system local file system data feed mapping mesh data feed mesh data feed ‘maps’ data feed to a file system location 1 1 2 2 items in data feed represent files mesh object defines permission scope for sharing feeds 3 3

11 To Do List A list of items to do http://example.com/partial.xml Buy groceries Get milk,...... version vector and conflicts for each feed item

12 local file system local file system Mesh Service User-data storage Live fx Client User-data storage Mesh folders app (local replica) 010010 010100 111100 Scalable storage feeds, content, permissions HTTP, FeedSync handles mesh folders

13 Mesh Service User-data storage Live fx Client User-data storage 010 101 Scalable storage Services fabric Local file system Accounts Microsoft Update Live ID Service Accounts Live ID Client Runtime Library Live ID Client Runtime Library Messenger NAT Traversal Messenger NAT Traversal Messenger Relay Service Messenger Relay Service Mesh UX Communications & Presence Communications & Presence Notifications Communications & Presence Communications & Presence

14

15 Mesh Accounts Live fx Client update local cache subscribe for change notifications Startup File change Mesh User-Data Storage synchronize feed upload updated files synchronize local replicas subscribe for change notifications

16 Mesh Notifications Live fx Client Mesh User-Data Storage fire change notifications Content replication synchronize local replica query availability of updated files fetch updated files from peers File change continued File change continued Mesh Communications and Presence deliver change notifications query availability of peers relay or direct connection

17

18 https://accounts.mesh.com/Identities/FKEXBSLJR3VUXEXMTPSSOVO6GM/DeviceClaims/CSOW2TEBYUSE5BD3I5QOS724UU each resource lives in a ‘home’ datacenter each resource has a stable canonical URI based on its resource identifier each resource has a location URI that routes requests directly to its ‘home’ datacenter https://accounts.clus9.bay.mesh.com/Identities/FKEXBSLJR3VUXEXMTPSSOVO6GM/DeviceClaims/CSOW2TEBYUSE5BD3I5QOS724UU requests to the ‘wrong’ datacenter get redirected, and clients cache the redirect URI for future use mapping a resource identifier to its ‘home’ datacenter requires a lookup in a replicated database

19

20 Account APIs Services fabric User-Data Storage Subscription store Notification queue store Notification queue store Device presence store Dictionary state store Partitioning & Recovery Manager Watchdogs front end roles back end roles infrastructure roles commodity hardware xcopy deployment automated rollback self-monitoring fail-fast recovery self-healing scale unit Scalable storage Services fabric SKU: 2P Dual Core 8GB RAM 4x 500GB SATA II HDD Windows Server partitioning units Web Desktop Content upload & download Front end role Back end role Building block

21 Services fabric Subscription store Notification queue store Notification queue store Device presence store Dictionary state store Partitioning & Recovery Manager Watchdogs Web Desktop Content upload & download Notifications API Accounts Scalable Storage User-Data Structured Storage Live ID Messenger Relay Hotmail User-Data Blob Storage reliable state stores soft state stores building block services Accounts API User-Data Storage API Communications & Presence soft state stores Front end role Back end role Building block

22 Communications and Presence Node 1 Node 2 {ECCA8793-3208-48A9-A1A1-038D0AD704C5} /MeshObjects/FJ3GZXUNDC4EPPPPUMQ2QNCG6I/Subscriptions/GLW6BC6HRWFU5LEW7HTX5FPC3Y hash nodes & resources to the same output space node ‘nearest’ a resource is responsible for it Notification queue store Notification queue store Device presence store Partitioning & Recovery Manager Owner library Lookup library Owner library Notifications API Lookup library consistent hashing node loss tracking resource owner nodes resource client nodes owner library obtains leases lookup library queries assignments

23 Services fabric controller Mesh services host process Windows Server Mesh service application Mesh services runtime AP configuration NETFX 3.5 SP1 Tracing & log collection multiple processesmesh service process Mesh service code Building block code singleton process SMB.sys

24 Services fabric controller Mesh services host process Windows Server HTTP.sys sockets HTTP request dispatcher TLS/TCP stream dispatcher Mesh resource handlers Mesh content handlers TLS/TCP handlers TLS/TCP handlers Mesh services runtime AP configuration Subscriptions Soft state lookup NETFX 3.5 SP1 Tracing & log collection SMB.sys WCF syndication Accounts User-data storage Communications & Presence Notifications Scalable storage client User-data content upload & download TCP notification streaming multiple processesmesh service processsingleton process Mesh service code Building block code

25 Services fabric controller Mesh services host process Windows Server sockets Sockets dispatcher Mesh resource managers Mesh services runtime AP configuration Subscriptions Soft state owner/lookup NETFX 3.5 SP1 Tracing & log collection SMB.sys Scalable storage client multiple processmesh service processsingleton process Work queues Device presence manager Notification queue manager Subscription manager Dictionary store manager Partitioning and recovery manager Mesh service code Building block code

26

27 On availability: Design for loosely coupled dependence on building blocks Diligently validate client/cloud upgrade scenarios Invest in pre-production stress and functional coverage in environments that look like production Design for throttling based on both dynamic thresholds and static bounds

28 On monitoring: Continuously refine performance counters, logs, and log processing tools Monitor end-user-visible operations (Keynote) Build end-to-end tracing across tiers Self-healing is hard: Invest in tuning watchdogs and thresholds

29 On deployment: Deployments every other week, client upgrades every month Major functionality roughly each quarter Took advantage of gradual ramp to learn lessons early

30 synchronize user-data storage with non-Microsoft services (e.g. Smugmug) federate user authentication with other identity providers (e.g. Active Directory) personal and enterprise user-data storage offerings: on-premises software and online service You saw this working today: Microsoft Services Connector You saw this in the Sync Framework session Stay tuned!

31 Desktop Windows Azure ISV Apps Live Mesh Enterprise Apps Enterprise Apps Azure Platform Services Microsoft Federation Gateway Live Identity Provider Exchange Your AppsSharepoint Active Directory Active Directory Enterprise On-Premises Microsoft Services Connector Microsoft Services Connector Online Services CRM Online Live Services Live Mesh Live Mesh Soon: enterprise credentials in Live Mesh Future: enterprise policy on Mesh Services and policy

32 Mesh Services User-data storage 010 101 Accounts Communications & Presence Communications & Presence Notifications Cloud Sync Cloud Sync Live Framework SyncFX store providers Sync apps Future: Mesh Services as a sync hub for your apps

33

34

35 Please fill out your evaluation for this session at: This session will be available as a recording at: www.microsoftpdc.com

36

37 © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

38


Download ppt " Abolade Gbadegesin Principal Software Architect Microsoft Corporation BB06."

Similar presentations


Ads by Google