windows azure conference 2014 windows azure mobile services from ground up
TRANSCRIPT
Windows Azure Conference 2014
Windows Azure Conference 2014
Gandhali Samant
Windows Azure Mobile Services from ground up
Windows Azure Conference 2014
• Building Apps• Building Apps with mobile Service• Data Storage• Push Notifications• Security and authentication• Questions
Agenda
What are we Building Apps for?
Windows Azure Conference 2014
Windows Azure Mobile Services
Data
NotificationsServer Logic
Scheduler
Logging & Diag
ScaleAuth
Windows Azure Conference 2014
Getting started with HTML / JS
Windows Azure Conference 2014
• Powered by SQL Database• Same DB – Multiple Mobile Services• Data management in:
– Windows Azure Portal– SQL Portal– SQL Management Studio– REST API– CLI Tools
Structured Storage
Windows Azure Conference 2014
The REST API
Action HTTP Verb URL Suffix
Create POST /TodoItem
Retrieve GET /TodoItem?$filter=id%3D42
Update PATCH /TodoItem/id
Delete DELETE /TodoItem/id
Data Operations and their REST Equivalents
Base REST API Endpoint URL
http://Mobileservice.azure-mobile.net/tables/*
Windows Azure Conference 2014
JSON to SQL Type Mappings
JSON Value T-SQL TypeNumeric values (integer, decimal, floating point)
Float
Boolean BitDateTime DateTimeOffset(3)String Nvarchar(max)
Windows Azure Conference 2014
Server Side Scripts
Built on top of Node.js
Passes through to SQL by default
Intercept CRUD requests to tables
Fully customizable logic flow
Customizing data flow on the server
Windows Azure Conference 2014
Node ModulesExtensibility through numerous modules
request
console
push.*
mssql
statusCodes azure
sendgrid
pusher
twilio
Windows Azure Conference 2014
Adding Server Logic
Windows Azure Conference 2014
Push Notifications1. Register for push
notifications
2. Register with your send token to Mobile Service
3. Push from server side scripts
Client
(1)
(2)
(3)
(3)
Windows Azure Conference 2014
Pushing with Native
Windows Azure Conference 2014
User Authentication
Windows Azure Conference 2014
• Table level permissions for each operation– Everyone– Anyone with the Application Key– Only Authenticated Users– Only Scripts and Admins
• User options in scripts– user.level (admin, authenticated, anonymous)– user.userId (provider:id or undefined)
Data Authorization
Windows Azure Conference 2014
Adding Authentication with Xamarin
Windows Azure Conference 2014
Command Line Tools
Create / Delete Services
Create / Update / Delete Tables and Permissions
Inspect / Delete Table Data
Create, / Upload / Delete Scripts
Scriptable control from PowerShell / Bash
Scale Up / Down Services Much More!
Windows Azure Conference 2014
Using the CLI
Windows Azure Conference 2014
• Execute scripts on a Schedule• Execute scripts on demand• Frequency and length of execution
based off of service level
Scheduler
Windows Azure Conference 2014
• Non-table based scripts• Accessible from:
– Get– Post– Put– Patch– Delete
• Same permissions as Tables
Custom API
Windows Azure Conference 2014
NPM• Ability to use ‘npm install module’ to download NPM modules• Currently accessible from Custom API only
Script Source Control
Shared Scripts• Make scripts accessible from other scripts• Like creating Node Modules
• Handled through Git repo• Access to table, scheduler, custom API, shared scripts, and
permissions
Windows Azure Conference 2014
Scheduler, Custom API, Script Source
Windows Azure Conference 2014
Diagnostics, Logging, Scale
API Calls, CPU Time, Data Out
Console logging from Scripts
Scale service based off of API Calls
Scale SQL DB / Server
Windows Azure Conference 2014
Service Scale
Free• 500K API calls per subscription per
month
Standard• 1.5M API calls per unit per month
Premium• 15M API calls per unit per month
Windows Azure Conference 2014
Diagnostics, Logging, and Scale
Windows Azure Conference 2014
Preview Pricingpreview pricing & licensing $ service level
agreements
PreviewNo availability SLA
Shared (multitenant environment)
Small instance is the only size available; multiple may be purchased
First 10 Mobile Services are free, with no plans to start charging
Reserved (private VM)
Small instance is the only size available; multiple may be purchased
Charge for Preview will be at the same reduced rate as Web Sites
Up to 100 Mobile Services
Windows Azure Conference 2014
Mobile Services GA Pricingpricing & licensing $ service level
agreements
General Availability99.9%
Free Standard Premium
Price FreeUp to 10 services,
Up to 100 Active Devices**
$25 USD/mo(per unit**)
$199 USD/mo(per unit**)
API Calls 500K (per subscription)
1.5M(per unit)
15M(per unit)
Scale N/A Up to 6 Standard units
Up to 10 Enterprise units
Scheduled Jobs Limited Included Included
SQL Database (required)
20MB Included, Standard rates apply
for more capacity
20MB Included, Standard rates apply
for more capacity
20MB Included, Standard rates apply
for more capacity
*prorated daily
**Active devices refers to the number of unique devices that have both obtained your Mobile Services powered app from a public app store and have made at least one call to your mobile service over the past 30 days.
Windows Azure Conference 2014Windows Azure Conference 2014
© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.