2. Agenda
Definition
What’s the service is for ?
How it works?
Prices
Architecture
Data Storage
Push Notifications
Authentication
Supports
3. Windows Azure Mobile Services
Azure Mobile Services is a Azure service
offering designed to make it easy to
create highly-functional mobile apps
using Azure. Mobile Services brings
together a set of Azure services that
enable backend capabilities for your
app. Integration with Microsoft Visual
Studio 2013 makes it easy to connect to
Mobile Services without having to log
into the Azure Management Portal.
4. Use single sign-on with Active Directory,
Facebook, Twitter, and Google
Push notifications to individual users and
dynamic audience segments
Store data in SQL, Table Storage, and MongoDB
Access on-premises systems, Office 365, and
SharePoint
Use cloud-based sync to build apps that work
offline
8. Why Use Azure Mobile Services?
Quick and extreme scalability
Support for every platform
Use the parts you need
Easily build cloud back-ends
9. Azure Mobile Services Strategies
Provie a backend to an app running on any
device.
Store your data in the cloud or offline.
Authenticate users using
Facebook,Twitter,Microsoft Account, or Active
Directory.
Built-in support for cross-platform push
notifications.
10. What needed for Mobile Application?
Identity
Windows Azure Mobile Services
Structured Storage
Messaging Media
Unstructured Storage
Additional Services
11. Mobile Platforms
Android
Java
Eclipse
IntelliJ
Windows
Phone
C#/Visua
l Basic/F#
Visual
Studio
iOS
Objec
tive C
Xcode
12. Supported Platforms and Features
Platforms
IOS
Android
Windows Phone
Windows 8
HTML/JavaScript
PhoneGap
Xamarin
Features
Data and queries
Push Notifications
Authendication
Server-side scripts
Custom API
Offline sync
Mass push
Git integration
15. Data Storage and Access
Data Storage
New or Existing Database
Reporting, TSQL support, existing tools, etc.
Manage your way (portal, REST API, SSMS, etc.)
In Windows Azure Mobile Services, data is stored in tables, which are maintained
in the Windows Azure SQL Database that is associated with your mobile service.
Data Access
REST API
OData Interface
GET, POST, PATCH, DELETE
DB
17. Security
Application Key
NOT A SECURITY TOKEN/CONTROL
Hint that user is coming from your app (reduce chance of misuse)
Private until you publish the app
Master Key
All powerful
Do NOT distribute with your application
Use from server-side logic you control
18. Authentication
Mobile Services integrates with the following identity providers to make
it easy to authenticate users from your app:
Microsoft Account
Facebook login
Twitter login
Google login
To enable authentication, you must first register your app with one or
more of these identity providers and then configure your mobile
service.
You must also add authentication code to your app.
21. PUSH Notification
Mobile Services can send push notifications to your apps.
The way that you configure and send push notifications depends on your app.
You can send push notifications to the following applications:
Windows Store app by using the Windows Push Notification Service (WNS). You can send push
notifications to your app, you must configure your mobile service to work with WNS.
iPhone and iPad apps by using the Apple Push Notification Service (APNS). You can send
push notifications to your app, you must configure your mobile service to work with APNS. Do
this by generating a special push notification certificate at the iOS Provisioning Portal
Android: You can send push notifications to Android apps by using the Google Cloud
Messaging (GCM) service. You can send push notifications to your app, you must configure
your mobile service to work with GCM.
Windows Phone 8 app by using the Microsoft Push Notification Service (MPNS). Mobile
Services does not require you to register your Windows Phone 8 app to send push
notifications.
22. How Push Notifications Work ?
Retrieve device handle
Device notified (even when app is inactive)
Store handle in app back-end Send notification to handle
25. Architecture
Zumo
Resource
Provider
Zumo
Mgmt DB Site 1
SQL 2 SQL N
Zumo
Runtime
SQL 1
Scheduler
RDFE
Site 2 Site N
Azure
SDK
3rd
party
SDKS
Azure LBARR
App
Scripts
Win8
Device
iPhone
Portal
26. Scheduler
Execute scripts on a Schedule (by minutes / hours /days /month)
Execute scripts on demand
İdeal for backend data processing
Removing dublicate records from a table
Backing up a database
Send a report via email.
When your mobile service runs in free mode, you can create only
one scheduled job at a time; in reserved mode, you can create
up to ten scheduled jobs at the same time.
28. Logging
console object
log(formatString, obj, .. .)
info(…)
warn(…)
error(…)
Mobile Services;
Writes system and script errors to the log.
Your registered server scripts can also write information directly to the log by using
the console object.
29. Scale
Compute
Scale out number of instances
Scale up the VM size
Storage
Dedicated SQL Database
Larger sized SQL Database
On the Scale table, you can scale your mobile service by switching to
reserved mode and adding role instances.
You can also scale the Windows Azure SQL Database instance used by the
service.
30. Free Offer at Preview
10 Mobile
Services
Running on
shared
instances
1GB SQL
Database
From WA Free Trial
No SLA during Preview. Only small instances available. Can upgrade to a reserved
instance at 33% discount from normal Pay-As-You-Go rates during Preview.
33. Brief Summary
Easy to study,even for free
Multiple Services,one database possible
Killer features, all out of the box
SDK for IOS,Android,Windows 8, Windows phone 8
Full REST supported(e.g.Windows Phone 7)
TİPS:
Version the server side scripts separately
Use logging wisely
Integrate with Service Bus, Storage, Queues.
34. Resources
Windows Azure Mobile Services
http://aka.ms/mobileservices
SDK and Samples available on GitHub
https://github.com/WindowsAzure/azure-mobile-services
Inside Windows Azure Mobile Services
http://channel9.msdn.com/posts/Kirill-Gavrylyuk-and-Josh-Twist-Inside-Windows-Azure-
Mobile-Services
Windows Azure FREE Trial
http://bit.ly/MikeAzureTrial
OAuth
Renders the OAuth web interface for the selected provider.
RDFE (RedDog Front End) is the publicly exposed API which is the front end to the Management Portal and the Service Management API (ie. Visual Studio, Azure MMC, etc). All requests from the user go through RDFE.
FFE (Fabric Front End) is the layer which translates requests from RDFE into the fabric commands. All requests from RDFE go through the FFE to reach the fabric controllers.
ARR: Application Request Routing
1 Mobile Service = 1 backend for an app. Each mobile service can utilize multiple features ie a mobile service for to do app can use user auth, multiple types of push, and structured storage and still count as one mobile service.
WA free trial DB expires after 90 days. Important to note that BizSpark and MSDN subscriptions provide longer free DB.
Reserved offers 100 mobile services and unlimited outbound data (5GB free promotion).
Preview: $0.08/hour
GA: $0.12/hr