SlideShare uma empresa Scribd logo
1 de 26
Cloud Powered Mobile Apps
with Azure
Boyko Anton
Microsoft Azure MVP
boyko.ant@live.com
Microsoft Azure
What is Mobile Services?
2
Storage
Authentication
Logic
Push
Scheduler
Structured Storage
• Powered by SQL Database
• Supports rich querying capabilities
• Dynamic Schematization
• Data management in:
• Azure Portal
• SQL Portal (Silverlight)
• SQL Management Studio
• REST API
• Azure CLI Tools
• SQL CLI
3Microsoft Azure
The REST API
4
Action HTTP Method URL Suffix
Create POST /TodoItem
Read GET /TodoItem?filter=id%3D42
Update PATCH /TodoItem/id
Delete DELETE /TodoItem/id
Microsoft Azure
Base Endpoint: https://my-service.azure-mobile.net/tables/*
JSON to SQL Type Mappings
5
JSON Type T-SQL Type
Numeric values (integer, decimal,
floating point)
Float(53)
Boolean bit
DateTime DateTimeOffset(3)
String Nvarchar(max)
Microsoft Azure
Auto-generated Columns
• id – unique guid
• __createdAt – date
• __updatedAt – date
• __version – timestamp
• Helps with concurrency and offline
6Microsoft Azure
Backend Logic:
JavaScript & .NET
Server Side Table Scripts
8
Node.js scripts
Intercept CRUD
requests to tables
Passes through to SQL
by default
Fully customizable
.NET Web API
backend in
Visual Studio
MongoDB, Table
Storage, SQL Azure
Node Modules
9
request push.*
console mssql
tables azure
sendgrid
pusher
twilio
Custom API
• Non-table based endpoints
• Accessible from
• GET
• POST
• PUT
• PATCH
• DELETE
• For node.js logic in scripts like table endpoints
• For .NET delivered through a WebAPI
• Expose any functionality you want
10Microsoft Azure
File Storage
• Don’t store files in Mobile Services DB
• Use Mobile Service to provide a Valet Key Pattern to Blob Storage,
aka BLOB SAS
• Create table / custom API script to talk to Blob Storage
• Script generates Shared Access Signature (SAS) URL
• Script returns SAS URL to client app
• Client app uploads data to blob storage directly
• Store file URL in Mobile Service DB as needed
• Blob storage costs less and is built for redundant file storage
11Microsoft Azure
Push Notifications
Push Notification Flow
13Microsoft Azure
Notification Hubs
• Separate from Mobile Services
• Can be used regardless of whether you’re storing data in Azure
• Extremely scalable push notifications
• Cross platform support
• Push to iOS, Android, Kindle, Windows Phone, Windows Store
• Tags (i.e. tie my registration to this topic or user ID)
• Templates (i.e. when I get a push, send it in this format)
• Server SDKs for .NET, Java, and Node (also open as REST API)
14Microsoft Azure
Authorization
&
Authentication
Data Authorization
Per HTTP method auth options:
• App Key Required
• Not ideal for production use
• Everyone
• Authenticated Users
• Admins and other scripts
• Requires Master Key as header
401 Unauthorized response if security check fails
16Microsoft Azure
User Auth Flow
17Microsoft Azure
GOOGLE
FACEBOOK
TWITTER
MOBILE SERVICE
DEVICE
MICROSOFT
ACCOUNT
AAD
The User object
User.level
• Admin
• Authenticated
• Anonymous
User.userId
• Provider:id or undefined
User.getIdentities()
• UserId
• Provider Access Token / Secret
• Basic user information (i.e. name, username, locale, picture, link)
18Microsoft Azure
Scheduler
Scheduled Jobs
• Executes a script on defined schedule
• Can be run on demand
• Ideal for any backend data processing job
• Length / frequency based of Mobile Service tier
20Microsoft Azure
Script
Source
Control
Script Source Control
• Creates a Git repo in Azure
• Access table, scheduler, custom API, shared scripts and permissions
• Pushing changes triggers a redeploy of your Mobile Service
• Enables installing NPM modules (for Node backends)
• Shared Scripts
• Create scripts that can be used from all other scripts in your Service
22Microsoft Azure
Diagnostics
Logging
Scale
Diagnostics, Logging, Scale
24
API Calls, # of Devices,
Data Out
Console Logging (auto
error logging)
Scale Service Based off API
Calls
Auto-scale to Save Money
Free Tier for Mobile Free Tier for SQL
Mobile Service Scaling
 Free: 500k calls / month / subscription
 Basic: 1.5M calls / unit (6) / month
 Standard: 15M calls / unit (10) / month
Microsoft Azure
Q & A
Boyko Anton
boyko.ant@live.com
facebook.com
/groups/azure.ua

Mais conteúdo relacionado

Mais procurados

Zero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resourcesZero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resourcesJoonas Westlin
 
Asp.net identity dot netconf
Asp.net identity dot netconfAsp.net identity dot netconf
Asp.net identity dot netconfrustd
 
Azure Active Directory
Azure Active DirectoryAzure Active Directory
Azure Active DirectorySovelto
 
Authentication and Authorization in Asp.Net
Authentication and Authorization in Asp.NetAuthentication and Authorization in Asp.Net
Authentication and Authorization in Asp.NetShivanand Arur
 
Asp.Net Identity
Asp.Net IdentityAsp.Net Identity
Asp.Net IdentityMarwa Ahmad
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesJoonas Westlin
 
Zero credential development with managed identities
Zero credential development with managed identitiesZero credential development with managed identities
Zero credential development with managed identitiesJoonas Westlin
 
Mobile Authentication for iOS Applications - Stormpath 101
Mobile Authentication for iOS Applications - Stormpath 101Mobile Authentication for iOS Applications - Stormpath 101
Mobile Authentication for iOS Applications - Stormpath 101Stormpath
 
Azure Ninja Tips and Tricks
Azure Ninja Tips and TricksAzure Ninja Tips and Tricks
Azure Ninja Tips and TricksTodd Whitehead
 
Azure active directory
Azure active directoryAzure active directory
Azure active directoryRaju Kumar
 
Windows Azure Active Directory
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active DirectoryPavel Revenkov
 
Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020Microsoft 365 Developer
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Kris Wagner
 
DevSum: Azure AD B2C Application security made easy
DevSum: Azure AD B2C Application security made easyDevSum: Azure AD B2C Application security made easy
DevSum: Azure AD B2C Application security made easySjoukje Zaal
 
Dear Azure: External collaboration with Azure AD B2B
Dear Azure: External collaboration with Azure AD B2BDear Azure: External collaboration with Azure AD B2B
Dear Azure: External collaboration with Azure AD B2BSjoukje Zaal
 
Identity in ASP.NET Core
Identity in ASP.NET CoreIdentity in ASP.NET Core
Identity in ASP.NET Coreondrejbalas
 

Mais procurados (19)

Zero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resourcesZero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resources
 
Asp.net identity dot netconf
Asp.net identity dot netconfAsp.net identity dot netconf
Asp.net identity dot netconf
 
Azure Active Directory
Azure Active DirectoryAzure Active Directory
Azure Active Directory
 
Authentication and Authorization in Asp.Net
Authentication and Authorization in Asp.NetAuthentication and Authorization in Asp.Net
Authentication and Authorization in Asp.Net
 
Asp.Net Identity
Asp.Net IdentityAsp.Net Identity
Asp.Net Identity
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed Identities
 
Zero credential development with managed identities
Zero credential development with managed identitiesZero credential development with managed identities
Zero credential development with managed identities
 
Mobile Authentication for iOS Applications - Stormpath 101
Mobile Authentication for iOS Applications - Stormpath 101Mobile Authentication for iOS Applications - Stormpath 101
Mobile Authentication for iOS Applications - Stormpath 101
 
Azure Ninja Tips and Tricks
Azure Ninja Tips and TricksAzure Ninja Tips and Tricks
Azure Ninja Tips and Tricks
 
Azure active directory
Azure active directoryAzure active directory
Azure active directory
 
Windows Azure Active Directory
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active Directory
 
ASP.NET 13 - Security
ASP.NET 13 - SecurityASP.NET 13 - Security
ASP.NET 13 - Security
 
Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365
 
DevSum: Azure AD B2C Application security made easy
DevSum: Azure AD B2C Application security made easyDevSum: Azure AD B2C Application security made easy
DevSum: Azure AD B2C Application security made easy
 
AWS Users Authentication
AWS Users AuthenticationAWS Users Authentication
AWS Users Authentication
 
Dear Azure: External collaboration with Azure AD B2B
Dear Azure: External collaboration with Azure AD B2BDear Azure: External collaboration with Azure AD B2B
Dear Azure: External collaboration with Azure AD B2B
 
Azure staticwebapps
Azure staticwebappsAzure staticwebapps
Azure staticwebapps
 
Identity in ASP.NET Core
Identity in ASP.NET CoreIdentity in ASP.NET Core
Identity in ASP.NET Core
 

Destaque

Testing in projects
Testing in projectsTesting in projects
Testing in projectsDataArt
 
Bit trade labs sovereign identity fintech summit 2016
Bit trade labs sovereign identity   fintech summit 2016Bit trade labs sovereign identity   fintech summit 2016
Bit trade labs sovereign identity fintech summit 2016Glen Frost
 
Макс Волошин «Микросервисы на практике»
Макс Волошин «Микросервисы на практике»Макс Волошин «Микросервисы на практике»
Макс Волошин «Микросервисы на практике»DataArt
 
«Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt
«Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt  «Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt
«Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt DataArt
 
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUsDataArt
 
文學通的開發心路歷程
文學通的開發心路歷程文學通的開發心路歷程
文學通的開發心路歷程建銘 廖
 
Application form
Application formApplication form
Application formsksknba5015
 
Estrategika nuevos productos proteccion
Estrategika nuevos productos proteccionEstrategika nuevos productos proteccion
Estrategika nuevos productos proteccionJUAN CARLOS CALDERON
 
Стратегия и Кризисы
Стратегия и КризисыСтратегия и Кризисы
Стратегия и КризисыDataArt
 
Thriller powerpoint finished
Thriller powerpoint finishedThriller powerpoint finished
Thriller powerpoint finishedAbbey Cotterill
 
Visiting unpleasent places
Visiting unpleasent placesVisiting unpleasent places
Visiting unpleasent placesArpanasa
 
Fiscalidad de internet
Fiscalidad de internetFiscalidad de internet
Fiscalidad de internetJoel Quintana
 
Ксения Кобрин "Сферы применения различных типов менеджмента"
Ксения Кобрин "Сферы применения различных типов менеджмента"Ксения Кобрин "Сферы применения различных типов менеджмента"
Ксения Кобрин "Сферы применения различных типов менеджмента"DataArt
 
A Journey to Power Intelligent IT - Big Data Employed
A Journey to Power Intelligent IT - Big Data EmployedA Journey to Power Intelligent IT - Big Data Employed
A Journey to Power Intelligent IT - Big Data EmployedMohamed Sohail
 

Destaque (20)

Testing in projects
Testing in projectsTesting in projects
Testing in projects
 
Bit trade labs sovereign identity fintech summit 2016
Bit trade labs sovereign identity   fintech summit 2016Bit trade labs sovereign identity   fintech summit 2016
Bit trade labs sovereign identity fintech summit 2016
 
Макс Волошин «Микросервисы на практике»
Макс Волошин «Микросервисы на практике»Макс Волошин «Микросервисы на практике»
Макс Волошин «Микросервисы на практике»
 
«Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt
«Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt  «Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt
«Lean UX — мелочи для успешных проектов» Анастасия Режепп, DataArt
 
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
 
Movie distributors
Movie distributorsMovie distributors
Movie distributors
 
Sam mendes
Sam mendesSam mendes
Sam mendes
 
文學通的開發心路歷程
文學通的開發心路歷程文學通的開發心路歷程
文學通的開發心路歷程
 
Application form
Application formApplication form
Application form
 
Estrategika nuevos productos proteccion
Estrategika nuevos productos proteccionEstrategika nuevos productos proteccion
Estrategika nuevos productos proteccion
 
Стратегия и Кризисы
Стратегия и КризисыСтратегия и Кризисы
Стратегия и Кризисы
 
Thriller powerpoint finished
Thriller powerpoint finishedThriller powerpoint finished
Thriller powerpoint finished
 
Visiting unpleasent places
Visiting unpleasent placesVisiting unpleasent places
Visiting unpleasent places
 
Fiscalidad de internet
Fiscalidad de internetFiscalidad de internet
Fiscalidad de internet
 
Ксения Кобрин "Сферы применения различных типов менеджмента"
Ксения Кобрин "Сферы применения различных типов менеджмента"Ксения Кобрин "Сферы применения различных типов менеджмента"
Ксения Кобрин "Сферы применения различных типов менеджмента"
 
A Journey to Power Intelligent IT - Big Data Employed
A Journey to Power Intelligent IT - Big Data EmployedA Journey to Power Intelligent IT - Big Data Employed
A Journey to Power Intelligent IT - Big Data Employed
 
Riley slides (2)
Riley slides (2)Riley slides (2)
Riley slides (2)
 
Transistores
TransistoresTransistores
Transistores
 
Joint venture
Joint ventureJoint venture
Joint venture
 
Biblioterapia
BiblioterapiaBiblioterapia
Biblioterapia
 

Semelhante a Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure Mobile Services — создаем backend для мобильного приложения со скоростью света»

Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureGameLandVN
 
Windows Azure - Mobile Services
Windows Azure - Mobile ServicesWindows Azure - Mobile Services
Windows Azure - Mobile ServicesJose R Jara
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesAymeric Weinbach
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps  with AzureCloud Powered Mobile Apps  with Azure
Cloud Powered Mobile Apps with AzureKris Wagner
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureKen Cenerelli
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile ServicesMarco Parenzan
 
Mobile Services for Windows Azure
Mobile Services for Windows AzureMobile Services for Windows Azure
Mobile Services for Windows AzureAbhishek Sur
 
World Azure Day Mobile Services Presentation
World Azure Day Mobile Services PresentationWorld Azure Day Mobile Services Presentation
World Azure Day Mobile Services PresentationDmitri Artamonov
 
Windows Azure Mobile Services - The Perfect Partner
Windows Azure Mobile Services - The Perfect PartnerWindows Azure Mobile Services - The Perfect Partner
Windows Azure Mobile Services - The Perfect PartnerMichael Collier
 
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Windows Azure Mobile Services at ReBOOT Cloud Camp , BangaloreWindows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Windows Azure Mobile Services at ReBOOT Cloud Camp , BangaloreSenthil Kumar
 
Azure Mobile Service - Techdays 2014
Azure Mobile Service - Techdays 2014Azure Mobile Service - Techdays 2014
Azure Mobile Service - Techdays 2014Puja Pramudya
 
Codemotion Berlin-Mobile Services
Codemotion Berlin-Mobile ServicesCodemotion Berlin-Mobile Services
Codemotion Berlin-Mobile ServicesMike Benkovich
 
Building a chat app with windows azure mobile
Building a chat app with windows azure mobileBuilding a chat app with windows azure mobile
Building a chat app with windows azure mobileFlavius-Radu Demian
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesJoonas Westlin
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesJoonas Westlin
 
2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity
2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity
2022 APIsecure_Passwordless Multi-factor Authentication Security and IdentityAPIsecure_ Official
 
Tokyo Azure Meetup #4 - Build 2016 Overview
Tokyo Azure Meetup #4 -  Build 2016 OverviewTokyo Azure Meetup #4 -  Build 2016 Overview
Tokyo Azure Meetup #4 - Build 2016 OverviewTokyo Azure Meetup
 
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...NCCOMMS
 

Semelhante a Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure Mobile Services — создаем backend для мобильного приложения со скоростью света» (20)

Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with Azure
 
Windows Azure - Mobile Services
Windows Azure - Mobile ServicesWindows Azure - Mobile Services
Windows Azure - Mobile Services
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile services
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps  with AzureCloud Powered Mobile Apps  with Azure
Cloud Powered Mobile Apps with Azure
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with Azure
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services
 
Mobile Services for Windows Azure
Mobile Services for Windows AzureMobile Services for Windows Azure
Mobile Services for Windows Azure
 
World Azure Day Mobile Services Presentation
World Azure Day Mobile Services PresentationWorld Azure Day Mobile Services Presentation
World Azure Day Mobile Services Presentation
 
Windows Azure Mobile Services - The Perfect Partner
Windows Azure Mobile Services - The Perfect PartnerWindows Azure Mobile Services - The Perfect Partner
Windows Azure Mobile Services - The Perfect Partner
 
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Windows Azure Mobile Services at ReBOOT Cloud Camp , BangaloreWindows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
 
Azure Mobile Service - Techdays 2014
Azure Mobile Service - Techdays 2014Azure Mobile Service - Techdays 2014
Azure Mobile Service - Techdays 2014
 
Codemotion Berlin-Mobile Services
Codemotion Berlin-Mobile ServicesCodemotion Berlin-Mobile Services
Codemotion Berlin-Mobile Services
 
Building a chat app with windows azure mobile
Building a chat app with windows azure mobileBuilding a chat app with windows azure mobile
Building a chat app with windows azure mobile
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Services
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed Identities
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed Identities
 
2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity
2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity
2022 APIsecure_Passwordless Multi-factor Authentication Security and Identity
 
Azure sentinel
Azure sentinelAzure sentinel
Azure sentinel
 
Tokyo Azure Meetup #4 - Build 2016 Overview
Tokyo Azure Meetup #4 -  Build 2016 OverviewTokyo Azure Meetup #4 -  Build 2016 Overview
Tokyo Azure Meetup #4 - Build 2016 Overview
 
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
 

Mais de DataArt

DataArt Custom Software Engineering with a Human Approach
DataArt Custom Software Engineering with a Human ApproachDataArt Custom Software Engineering with a Human Approach
DataArt Custom Software Engineering with a Human ApproachDataArt
 
DataArt Healthcare & Life Sciences
DataArt Healthcare & Life SciencesDataArt Healthcare & Life Sciences
DataArt Healthcare & Life SciencesDataArt
 
DataArt Financial Services and Capital Markets
DataArt Financial Services and Capital MarketsDataArt Financial Services and Capital Markets
DataArt Financial Services and Capital MarketsDataArt
 
About DataArt HR Partners
About DataArt HR PartnersAbout DataArt HR Partners
About DataArt HR PartnersDataArt
 
Event management в IT
Event management в ITEvent management в IT
Event management в ITDataArt
 
Digital Marketing from inside
Digital Marketing from insideDigital Marketing from inside
Digital Marketing from insideDataArt
 
What's new in Android, Igor Malytsky ( Google Post I|O Tour)
What's new in Android, Igor Malytsky ( Google Post I|O Tour)What's new in Android, Igor Malytsky ( Google Post I|O Tour)
What's new in Android, Igor Malytsky ( Google Post I|O Tour)DataArt
 
DevOps Workshop:Что бывает, когда DevOps приходит на проект
DevOps Workshop:Что бывает, когда DevOps приходит на проектDevOps Workshop:Что бывает, когда DevOps приходит на проект
DevOps Workshop:Что бывает, когда DevOps приходит на проектDataArt
 
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArtIT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArtDataArt
 
«Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
 «Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han... «Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
«Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...DataArt
 
Communication in QA's life
Communication in QA's lifeCommunication in QA's life
Communication in QA's lifeDataArt
 
Нельзя просто так взять и договориться, или как мы работали со сложными людьми
Нельзя просто так взять и договориться, или как мы работали со сложными людьмиНельзя просто так взять и договориться, или как мы работали со сложными людьми
Нельзя просто так взять и договориться, или как мы работали со сложными людьмиDataArt
 
Знакомьтесь, DevOps
Знакомьтесь, DevOpsЗнакомьтесь, DevOps
Знакомьтесь, DevOpsDataArt
 
DevOps in real life
DevOps in real lifeDevOps in real life
DevOps in real lifeDataArt
 
Codeless: автоматизация тестирования
Codeless: автоматизация тестированияCodeless: автоматизация тестирования
Codeless: автоматизация тестированияDataArt
 
Selenoid
SelenoidSelenoid
SelenoidDataArt
 
Selenide
SelenideSelenide
SelenideDataArt
 
A. Sirota "Building an Automation Solution based on Appium"
A. Sirota "Building an Automation Solution based on Appium"A. Sirota "Building an Automation Solution based on Appium"
A. Sirota "Building an Automation Solution based on Appium"DataArt
 
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...DataArt
 
IT talk: Как я перестал бояться и полюбил TestNG
IT talk: Как я перестал бояться и полюбил TestNGIT talk: Как я перестал бояться и полюбил TestNG
IT talk: Как я перестал бояться и полюбил TestNGDataArt
 

Mais de DataArt (20)

DataArt Custom Software Engineering with a Human Approach
DataArt Custom Software Engineering with a Human ApproachDataArt Custom Software Engineering with a Human Approach
DataArt Custom Software Engineering with a Human Approach
 
DataArt Healthcare & Life Sciences
DataArt Healthcare & Life SciencesDataArt Healthcare & Life Sciences
DataArt Healthcare & Life Sciences
 
DataArt Financial Services and Capital Markets
DataArt Financial Services and Capital MarketsDataArt Financial Services and Capital Markets
DataArt Financial Services and Capital Markets
 
About DataArt HR Partners
About DataArt HR PartnersAbout DataArt HR Partners
About DataArt HR Partners
 
Event management в IT
Event management в ITEvent management в IT
Event management в IT
 
Digital Marketing from inside
Digital Marketing from insideDigital Marketing from inside
Digital Marketing from inside
 
What's new in Android, Igor Malytsky ( Google Post I|O Tour)
What's new in Android, Igor Malytsky ( Google Post I|O Tour)What's new in Android, Igor Malytsky ( Google Post I|O Tour)
What's new in Android, Igor Malytsky ( Google Post I|O Tour)
 
DevOps Workshop:Что бывает, когда DevOps приходит на проект
DevOps Workshop:Что бывает, когда DevOps приходит на проектDevOps Workshop:Что бывает, когда DevOps приходит на проект
DevOps Workshop:Что бывает, когда DevOps приходит на проект
 
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArtIT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
 
«Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
 «Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han... «Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
«Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
 
Communication in QA's life
Communication in QA's lifeCommunication in QA's life
Communication in QA's life
 
Нельзя просто так взять и договориться, или как мы работали со сложными людьми
Нельзя просто так взять и договориться, или как мы работали со сложными людьмиНельзя просто так взять и договориться, или как мы работали со сложными людьми
Нельзя просто так взять и договориться, или как мы работали со сложными людьми
 
Знакомьтесь, DevOps
Знакомьтесь, DevOpsЗнакомьтесь, DevOps
Знакомьтесь, DevOps
 
DevOps in real life
DevOps in real lifeDevOps in real life
DevOps in real life
 
Codeless: автоматизация тестирования
Codeless: автоматизация тестированияCodeless: автоматизация тестирования
Codeless: автоматизация тестирования
 
Selenoid
SelenoidSelenoid
Selenoid
 
Selenide
SelenideSelenide
Selenide
 
A. Sirota "Building an Automation Solution based on Appium"
A. Sirota "Building an Automation Solution based on Appium"A. Sirota "Building an Automation Solution based on Appium"
A. Sirota "Building an Automation Solution based on Appium"
 
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
 
IT talk: Как я перестал бояться и полюбил TestNG
IT talk: Как я перестал бояться и полюбил TestNGIT talk: Как я перестал бояться и полюбил TestNG
IT talk: Как я перестал бояться и полюбил TestNG
 

Último

Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptxPoojaSen20
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 

Último (20)

Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 

Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure Mobile Services — создаем backend для мобильного приложения со скоростью света»

  • 1. Cloud Powered Mobile Apps with Azure Boyko Anton Microsoft Azure MVP boyko.ant@live.com Microsoft Azure
  • 2. What is Mobile Services? 2 Storage Authentication Logic Push Scheduler
  • 3. Structured Storage • Powered by SQL Database • Supports rich querying capabilities • Dynamic Schematization • Data management in: • Azure Portal • SQL Portal (Silverlight) • SQL Management Studio • REST API • Azure CLI Tools • SQL CLI 3Microsoft Azure
  • 4. The REST API 4 Action HTTP Method URL Suffix Create POST /TodoItem Read GET /TodoItem?filter=id%3D42 Update PATCH /TodoItem/id Delete DELETE /TodoItem/id Microsoft Azure Base Endpoint: https://my-service.azure-mobile.net/tables/*
  • 5. JSON to SQL Type Mappings 5 JSON Type T-SQL Type Numeric values (integer, decimal, floating point) Float(53) Boolean bit DateTime DateTimeOffset(3) String Nvarchar(max) Microsoft Azure
  • 6. Auto-generated Columns • id – unique guid • __createdAt – date • __updatedAt – date • __version – timestamp • Helps with concurrency and offline 6Microsoft Azure
  • 8. Server Side Table Scripts 8 Node.js scripts Intercept CRUD requests to tables Passes through to SQL by default Fully customizable .NET Web API backend in Visual Studio MongoDB, Table Storage, SQL Azure
  • 9. Node Modules 9 request push.* console mssql tables azure sendgrid pusher twilio
  • 10. Custom API • Non-table based endpoints • Accessible from • GET • POST • PUT • PATCH • DELETE • For node.js logic in scripts like table endpoints • For .NET delivered through a WebAPI • Expose any functionality you want 10Microsoft Azure
  • 11. File Storage • Don’t store files in Mobile Services DB • Use Mobile Service to provide a Valet Key Pattern to Blob Storage, aka BLOB SAS • Create table / custom API script to talk to Blob Storage • Script generates Shared Access Signature (SAS) URL • Script returns SAS URL to client app • Client app uploads data to blob storage directly • Store file URL in Mobile Service DB as needed • Blob storage costs less and is built for redundant file storage 11Microsoft Azure
  • 14. Notification Hubs • Separate from Mobile Services • Can be used regardless of whether you’re storing data in Azure • Extremely scalable push notifications • Cross platform support • Push to iOS, Android, Kindle, Windows Phone, Windows Store • Tags (i.e. tie my registration to this topic or user ID) • Templates (i.e. when I get a push, send it in this format) • Server SDKs for .NET, Java, and Node (also open as REST API) 14Microsoft Azure
  • 16. Data Authorization Per HTTP method auth options: • App Key Required • Not ideal for production use • Everyone • Authenticated Users • Admins and other scripts • Requires Master Key as header 401 Unauthorized response if security check fails 16Microsoft Azure
  • 17. User Auth Flow 17Microsoft Azure GOOGLE FACEBOOK TWITTER MOBILE SERVICE DEVICE MICROSOFT ACCOUNT AAD
  • 18. The User object User.level • Admin • Authenticated • Anonymous User.userId • Provider:id or undefined User.getIdentities() • UserId • Provider Access Token / Secret • Basic user information (i.e. name, username, locale, picture, link) 18Microsoft Azure
  • 20. Scheduled Jobs • Executes a script on defined schedule • Can be run on demand • Ideal for any backend data processing job • Length / frequency based of Mobile Service tier 20Microsoft Azure
  • 22. Script Source Control • Creates a Git repo in Azure • Access table, scheduler, custom API, shared scripts and permissions • Pushing changes triggers a redeploy of your Mobile Service • Enables installing NPM modules (for Node backends) • Shared Scripts • Create scripts that can be used from all other scripts in your Service 22Microsoft Azure
  • 24. Diagnostics, Logging, Scale 24 API Calls, # of Devices, Data Out Console Logging (auto error logging) Scale Service Based off API Calls Auto-scale to Save Money Free Tier for Mobile Free Tier for SQL
  • 25. Mobile Service Scaling  Free: 500k calls / month / subscription  Basic: 1.5M calls / unit (6) / month  Standard: 15M calls / unit (10) / month Microsoft Azure
  • 26. Q & A Boyko Anton boyko.ant@live.com facebook.com /groups/azure.ua

Notas do Editor

  1. Speaking Notes Azure Mobile Services is a Backend-as-a-Service Instead of you having to design, build, test, deploy, manage, and upgrade your whole backend, we do it for you Features of Mobile Services Storage – SQL DB Authentication – built in support for social providers w/ ability to custom auth Backend logic – data validation, logical flows, etc Push Notifications – across all major mobile platforms Scheduler – backend job processing
  2. Speaking points Mobile Service easily connects to SQL Database SQL offers rich querying and indexing capabilities Dynamic Schematization means you don’t have to be a DBA and manage schema Data can be managed in: Azure Portal (read and delete data) SQL Portal (Silverlight) SQL Management Studio (windows) REST API (used by SDKs) Azure CLI tools SQL CLI (Node module)
  3. Speaking points This is the mapping for the REST API exposed by table storage Standard REST Anything that can talk REST can connect to your Mobile Service
  4. Speaking points JSON to SQL mapping Whatever JSON data type on left is passed in generates column of SQL type on right
  5. Speaking notes Auto-generated columns id – unique id used to handle querying, updating, and deleting specific rows createdAt, updatedAt, version help with optimistic concurrency (first update wins) Last three columns not pulled to client by default (Need to specify query parameter to get those back)
  6. Speaking points * Section change: Backend Logic
  7. Speaking points Node backend generates Node scripts for each table action Scripts intercept CRUD requests Pass to SQL by default Custom logic added here Edit in portal (NODE) .NET Backend creates Visual Studio project
  8. Speaking points Node backend comes with pre-included modules Request – make web requests against other services Push.* - perform push notifications Console – log information Mssql – call stored procedures / custom SQL Tables – OO way of accessing tables in backend Azure – access service bus, blob, table storage, notification hubs, etc Partners Sendgrid – send emails Pusher – web socket style communications Twilio – SMS and voice Most have a free tier you can use
  9. Speaking points All scripts so far tied to a table action Custom APIs are non-table based endpoints Script functionality for normal HTTP methods
  10. File storage SQL DB for Mobile Services not ideal for file data storage Best practice is to use Mobile Service as Proxy Mobile Service script generates SAS URL Client uploads file to SAS URL Valet Key Patternhttp://msdn.microsoft.com/en-us/library/dn568102.aspx
  11. Speaking points Section change: Push Notifications
  12. Speaking points Push notifications work the same no matter which client you’re working with Client talks to PNS to register for push Client gets token, passes to Mobile Service Mobile Service asks PNS to deliver payload to token / channel URI / registration ID PNS delivers push to client app PNS = Push Notification Service (i.e. MPNS, WNS, GCM, ADM, APNS)
  13. Speaking points Notification Hubs are a separate service from Mobile Services but also used by Mobile Services Pushes to iOS, Android, Kindle, Windows Phone, Windows Store Extremely scalable (millions of pushes in minutes) Tags and templates Server SDKs: .NET, Java (beta), Node, REST API
  14. Speaking points Section change: Authorization and Authentication Controlling who can access what
  15. Speaking points Data auth – locking data down Default is App Key Required, great for pre-release time period Not production ready due to key’s accessibility in public apps Authenticated users – requests must contain user ID and matching auth token Admins and other scripts – only external requests with Master Key make it through Otherwise 401 is returned
  16. Speaking Points Server auth flow uses OAUTH Mobile Service is registered with provider to allow auth Client calls auth method and passes in provider name User authenticates, Mobile Service and provider do OAUTH User ID and token (for Mobile Service) returned to client Provider token / secret accessible in Mobile Service
  17. Speaking points User level indicates if they’ve logged in or came across with master key User ID for user making the request GetIdentities can be called to get provider token / secret and basic information from provider
  18. Speaking notes Subject change: Scheduler
  19. Speaking points Schedule jobs (scripts) can be run by the scheduler Ideal for any backend job processing (regular push notification, remove old data, etc) Length and how often you can run job based off tier of your mobile service
  20. Speaking points Subject change: Script source control
  21. Speaking points Script source control creates GIT repo for all scripts and permission JSON files Enables you to pull scripts down and edit locally Lets you create shared scripts to reuse code Enables installing of NPM modules (Node)
  22. Speaking points Subject change: diagnostics, logging, scale
  23. Speaking points Some default stats like # of api calls, # of devices connecting, amount of data out Api calls are important because that’s how mobile services’ scale is baed All console statements and errors go to logging area Auto-scaling helps save money Free tier for Mobile Services and SQL while developing
  24. Speaking points Scaling Free 500k / month / sub (across entire subscription is important distinction) Basic 1.5M / unit / month (up to 6 units) Standard 15M / unit / month (up to 10 units) More units available by contacting support