Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mobile + Cloud: Building Mobile Applications with Windows Azure Wade Wegner Blog:

Similar presentations


Presentation on theme: "Mobile + Cloud: Building Mobile Applications with Windows Azure Wade Wegner Blog:"— Presentation transcript:

1 Mobile + Cloud: Building Mobile Applications with Windows Azure Wade Wegner Twitter: @WadeWegner Blog: http://www.wadewegner.com/http://www.wadewegner.com/ AZR324

2 Who am I?

3 This session is focused on building device applications with Windows Azure We’ll talk about storage, identity, communications, platform services, and tools Several demos Agenda

4 Features in Action

5 Web sites Build with ASP.NET, Node.js or PHP Deploy in seconds with FTP, Git or TFS Start for free, scale up as your traffic grows

6 Windows Azure Mobile Services

7 Storage

8 Storage: What are our options? Benefits: Non-relational structured storage Massive scale-out Windows Azure Tables Benefits: Big files Windows Azure Blobs Benefits: Persistent Async Messaging Enqueue, Dequeue Windows Azure Queues Benefits: Relational database Highly available Managed for you as a service Windows Azure SQL Database

9 Storage: Secrets Windows Azure Storage name Storage key Windows Azure SQL Database Username Password Once you share your secret, it’s no longer secret

10 Storage: How do we keep secrets secret? Proxy the requests Client sends data to web role Web role sends data to storage (1) (2) Web Role

11 Storage: Windows Azure SQL Database Client sends request to proxy Proxy makes SQL call against SQL Database SQL Database returns a response Proxy returns response to device (1) (3) Web Role (2) (4)

12 Storage: Using Shared Access Signatures Client makes request of Web Role for SAS Web Role sends client SAS Client makes request Client gets response (1) (3) Web Role (2) (4)

13 Demo

14

15 Identity

16 Identity: What are the options? Create your own Username + password, token, etc. ASP.NET Membership Providers Use a single existing identity system Live Id, Facebook, etc. Develop directly against IdP protocol Outsource identity management Access Control Service

17 Security challenge Authentication Authorization User store Management UI Forget password? Customer support Data protection Integration with AD LDAP User mapping Synchronization Integration With Facebook More User mapping Facebook Auth API More Synchronization

18 Solution: Claim-based architecture

19 Demo

20 Identity

21 Communications

22 Communications: Device-initiated Device-initiated options HTTP-based, request/response Framework choices (WCF, Web API, OData, WebRequest, etc.) Wire format choices (SOAP, JSON, POX, etc.) - Drivers http://localhost:33779/WcfDataService1.svc/Drivers 2010-05-24T22:12:38Z - http://localhost:33779/WcfDataService1.svc/Drivers(1) 2010-05-24T22:12:38Z - - - 1 1 Rob Tiffany - http://localhost:33779/WcfDataService1.svc/Drivers(2) 2010-05-24T22:12:38Z - - - 2 1 Loke Uei Tan - http://localhost:33779/WcfDataService1.svc/Drivers(3) 2010-05-24T22:12:38Z - - - 3 1 Dan Bouie - http://localhost:33779/WcfDataService1.svc/Drivers(4) 2010-05-24T22:12:38Z - - - 4 1 John Dietz - http://localhost:33779/WcfDataService1.svc/Drivers(5) 2010-05-24T22:12:38Z - - - 5 2 Derek Snyder - http://localhost:33779/WcfDataService1.svc/Drivers(6) 2010-05-24T22:12:38Z - - - 6 2 Steve Hegenderfer - http://localhost:33779/WcfDataService1.svc/Drivers(7) 2010-05-24T22:12:38Z - - - 7 2 Chip Vollers - http://localhost:33779/WcfDataService1.svc/Drivers(8) 2010-05-24T22:12:38Z - - - 8 2 James Pratt http://localhost:33779/WcfDataService1.svc/"http://schemas.microsoft.com/ado/2007/08/dataservices"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"http://www.w3.org/2005/Atom"http://localhost:33779/WcfDataService1.svc/Drivershttp://localhost:33779/WcfDataService1.svc/Drivers(1)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(2)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(3)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(4)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(5)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(6)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(7)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(8)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" The same list of 8 Customers using SOAP and a DataSet dropped us down to 3 kb but still too big for my taste. 1 1 Rob Tiffany 2 1 Loke Uei Tan 3 1 Dan Bouie 4 1 John Dietz 5 2 Derek Snyder 6 2 Steve Hegenderfer 7 2 Chip Vollers 8 2 James Pratt http://tempuri.org/"http://www.w3.org/2001/XMLSchema" <ArrayOfDriver xmlns=http://schemas.datacontract.org/2004/07/ContosoWcfService.Modelshttp://schemas.datacontract.org/2004/07/ContosoWcfService.Models xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> 1 1 Rob Tiffany 1 2 Loke Uei Tan 1 3 Dan Bouie 1 4 John Dietz 2 5 Derek Snyder 2 6 Steve Hegenderfer 2 7 Chip Vollers 2 8 James Pratt http://www.w3.org/2001/XMLSchema-instance" [{"DistributionCenterId":1,"DriverId":1,"FirstName":"Rob","LastName":"Tiffany"}, {"DistributionCenterId":1,"DriverId":2,"FirstName":"Loke Uei","LastName":"Tan"}, {"DistributionCenterId":1,"DriverId":3,"FirstName":"Dan","LastName":"Bouie"}, {"DistributionCenterId":1,"DriverId":4,"FirstName":"John","LastName":"Dietz"}, {"DistributionCenterId":2,"DriverId":5,"FirstName":"Derek","LastName":"Snyder"}, {"DistributionCenterId":2,"DriverId":6,"FirstName":"Steve","LastName":“Harris"}, {"DistributionCenterId":2,"DriverId":7,"FirstName":"Chip","LastName":"Vollers"}, {"DistributionCenterId":2,"DriverId":8,"FirstName":"James","LastName":"Pratt"}] OData – XML 8.5kb REST-XML 1.2kb JSON 639 bytes

23 Communications: Cloud-initiated Push Notifications !Raaawww

24 Communications: Subscribing to Push Device requests a channel *NS returns channel Device sends URL to cloud Channel URL is stored in cloud Cloud sends notification *NS pushes to device Web Role *NS (1)(2) (3) (4) (5)

25 Communications: Cloud-initiated to device? Common pattern Use cloud-initiated push to tell the device to call to a service Cloud sends notification Notification services pushes to device Device receives message and calls to a service Web Role sends a response Web Role *NS (3) (2) (4) (1)

26 Notifications: Different services Windows 8: Windows Phone: iOS: Android:

27 Demo

28 Platform services

29 Application Building Blocks

30 Tools & Resources

31 Windows Azure Toolkits for Devices Easier for device developers to use Windows Azure AndroidiOSWindows Phone http://bit.ly/watandroidhttp://bit.ly/watioshttp://bit.ly/watwp7

32 Devices + Cloud Summary Toolkits Storage Identity Communications Platform Services

33


Download ppt "Mobile + Cloud: Building Mobile Applications with Windows Azure Wade Wegner Blog:"

Similar presentations


Ads by Google