Cloud Powered Mobile Apps with Microsoft Azure



Similar documents
Cloud Powered Mobile Apps with Azure

Tutto quello che c è da sapere su Azure App Service

Developing Microsoft Azure Solutions

Developing Microsoft Azure Solutions 20532A; 5 days

Course 10978A Introduction to Azure for Developers

MS 10978A Introduction to Azure for Developers

Course 20532B: Developing Microsoft Azure Solutions

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.

Developing Microsoft Azure Solutions 20532B; 5 Days, Instructor-led

10978A: Introduction to Azure for Developers

Introduction to Azure for Developers

Developing Windows Azure and Web Services

Microsoft Introduction to Azure for Developers

Hosting Models. Business Model Software (as a Service) Platform (as a Service) Infrastructure (as a Service) On Premises. Applications. Data.

Assignment # 1 (Cloud Computing Security)

Introduction to the Cloud OS Windows Azure Overview Visual Studio Tooling for Windows Azure Scenarios: Dev/Test Web Mobile Hybrid

Realizing the Benefits of Hybrid Cloud. Anand MS Cloud Solutions Architect Microsoft Asia Pacific

Implementing Microsoft Azure Infrastructure Solutions 20533B; 5 Days, Instructor-led

Course 20533B: Implementing Microsoft Azure Infrastructure Solutions

Linux A first-class citizen in Windows Azure. Bruno Terkaly bterkaly@microsoft.com Principal Software Engineer Mobile/Cloud/Startup/Enterprise

Course 20533: Implementing Microsoft Azure Infrastructure Solutions

Implementing Microsoft Azure Infrastructure Solutions

MS 20487A Developing Windows Azure and Web Services

This module provides an overview of service and cloud technologies using the Microsoft.NET Framework and the Windows Azure cloud.

GOA365: The Great Office 365 Adventure

Azure Day Application Development

CLOUD COMPUTING & WINDOWS AZURE

The Great Office 365 Adventure

Getting Started with the Ed-Fi ODS and Ed-Fi ODS API

Microsoft Azure Cloud oplossing als een extensie op mijn datacenter? Frederik Baert Solution Advisor

Course Outline. Microsoft Azure Fundamentals Course 10979A: 2 days Instructor Led. About this Course. Audience Profile. At Course Completion

Big data variety, 179 velocity, 179 volume, 179 Blob storage containers

Microsoft Azure for IT Professionals 55065A; 3 days

TH3 Office 365 REST APIs. Peter Carson

Deploy. Friction-free self-service BI solutions for everyone Scalable analytics on a modern architecture

Cloud Elements! Marketing Hub Provisioning and Usage Guide!

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

300+ APIs Everywhere

Using and Contributing Virtual Machines to VM Depot

Security Best Practices for Microsoft Azure Applications

SHARPCLOUD SECURITY STATEMENT

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5. Microsoft Azure Fundamentals M Length: 2 days Price: $ 1,295.

Open Source Technologies on Microsoft Azure

System Administration Training Guide. S100 Installation and Site Management

Platform Architecture & Integration with OpenShift

IT Exam Training online / Bootcamp

Implementing Microsoft Azure Infrastructure Solutions

Introduction to IBM Worklight Mobile Platform

Migrating SaaS Applications to Windows Azure

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T:

Cloud Computing with Windows Azure using your Preferred Technology

Implementing Microsoft Azure Infrastructure Solutions

Developing Windows Azure and Web Services

Azure Powershell Command Line Reference

Integrating Mobile apps with your Enterprise

MOC DEVELOPING WINDOWS AZURE AND WEB SERVICES

Implementing Microsoft Azure Infrastructure Solutions

DottsConnected SHAREPOINT 2010 ADMIN TRAINING. Exercise 1: Create Dedicated Service Accounts in Active Directory

Developing ASP.NET MVC 4 Web Applications

How To Use Kiteworks On A Microsoft Webmail Account On A Pc Or Macbook Or Ipad (For A Webmail Password) On A Webcomposer (For An Ipad) On An Ipa Or Ipa (For

Introduction to Building Windows Store Apps with Windows Azure Mobile Services

Goals. Provide an overview of SharePoint for Windows Azure. developers. Discuss how SharePoint & Windows Azure integrate from a development and IT Pro

AUTOMATED DISASTER RECOVERY SOLUTION USING AZURE SITE RECOVERY FOR FILE SHARES HOSTED ON STORSIMPLE

tibbr Now, the Information Finds You.

Developing ASP.NET MVC 4 Web Applications MOC 20486

Windows Azure platform What is in it for you? Dominick Baier Christian Weyer

day 1 2 Windows Azure Platform Overview... 2 Windows Azure Compute... 3 Windows Azure Storage... 3 day 2 5

Donky Technical Overview

Securely. Mobilize Any Business Application. Rapidly. The Challenge KEY BENEFITS

vcloud Air Platform Programmer's Guide

Mobile development with Apache OFBiz. Ean Schuessler, Brainfood

Exploring the options to deploy Microsoft SharePoint in the Cloud.

Windows Azure Pack Installation and Initial Configuration

Budget Event Management Design Document

Fairsail REST API: Guide for Developers

Implementing Microsoft Azure Infrastructure Solutions

Configuration Guide. BES12 Cloud

The last 18 months. AutoScale. IaaS. BizTalk Services Hyper-V Disaster Recovery Support. Multi-Factor Auth. Hyper-V Recovery.

AdRadionet to IBM Bluemix Connectivity Quickstart User Guide

Sisense. Product Highlights.

Microsoft Azure Cloud for Solution Architects

Azure Web Apps for Developers

Designing RESTful Web Applications

To install Multifront you need to have familiarity with Internet Information Services (IIS), Microsoft.NET Framework and SQL Server 2008.

-50% +28% YoY. Roughly one quarter of SBs and one half of MBs plan to shift their budgets to more cloud spending over onpremise

Using Application Insights to Monitor your Applications

Contents. 2 Alfresco API Version 1.0

New Features of SharePoint 2013

SharePoint 2013 on Windows Azure Infrastructure David Aiken & Dan Wesley Version 1.0

Sun Cloud API: A RESTful Open API for Cloud Computing

Avaya Inventory Management System

Course MS55077A Project Server 2013 Development. Length: 5 Days

Azure IaaS What s new & adaptions in CH. Marcel Frauchiger, PTS Microsoft Schweiz

SINGLE & SAME SIGN-ON ASPECTS

Traitware Authentication Service Integration Document

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

AZP: Microsoft Azure Infrastructure for IT Professional

Progress OpenEdge REST

Product Manual. MDM On Premise Installation Version 8.1. Last Updated: 06/07/15

Building a Continuous Integration Pipeline with Docker

Transcription:

Cloud Powered Mobile Apps with Microsoft Azure Malte Lantin Technical Evanglist Microsoft Azure

Malte Lantin Technical Evangelist, Microsoft Deutschland Fokus auf Microsoft Azure, App-Entwicklung Student Partner Program Lead Blog unter http://blogs.msdn.com/b/malte_lantin Twitter @MalteLantin Malte.Lantin@Microsoft.com Seit 5 Jahren bei Microsoft Microsoft Student Partner / Universität Duisburg-Essen Diplom Wirtschaftsinformatiker Seit Anfang 2010 bei Microsoft in unterschiedlichen Rollen (Product / Audience Marketing, Technical Evangelism) Sprecher auf diversen Konferenzen und Veranstaltungen

server/client cloud/mobile

Load Load Load Scenarios for the cloud Time Time Time Temporary Resources Flexible Growth Load Peaks Access from anywhere and any time

You scale, make resilient and manage Managed by vendor Scale, resilience and management by vendor You scale, make resilient & manage Scale, resilience and management by vendor You manage Why the cloud? Hosting models Business model On Premises Infrastructure (as a Service) Platform (as a Service) Software (as a Service) Applications

Azure

Data Layer Application layer Integration layer Access Control Layer Client layer (on-premises) Microsoft Azure Services Office Add-in PC Tablet Phone Browser Games console On-premises service On-premises database AD Multifactor Authentication BizTalk Services Service Bus Logic Apps Traffic Manager Virtual Networks Express Route CDN API Mgmt Mobile Apps Web Apps API Apps VM Media Services Notification Hubs Scheduler Automation Cloud Services Storage Blobs Tables Queues Data SQL Machine Backup and Database Learning HD Insight Caching Recovery StorSimple

How to use Microsoft Azure Management portal Pure HTML / JavaScript works in every modern browser >_ Scripting (Windows, Linux and Mac) CLI for Windows, Linux & Mac PowerShell for Windows REST API Use in you own applications used by Management Tools

Web Services und Microsoft Azure REST-based Web Services are an essential part of the platform 1. Provisioning of Web Services as components of larger cloud services and modern web applications e.g. Azure Mobile Services, API-Management 2. Management of services in Microsoft Azure through web services z.b. POST https://management.core.windows.net/<subscriptionid>/services/hostedservices/<cloudservice-name>/deployments

Where do we come from? Remote Procedure Calls (RPC) Actions in endpoints GetCustomer InsertInvoice DeleteCustomer Every endpoint corresponds to one URI

Representational State Transfer (REST) REST is not a standard but uses standards Architectural Concept Roy Fielding in 2000 Architectural Styles and the Design of Network-based Software Architectures HTTP Stack, explicit use of HTTP methods / verbs

Design principles of REST stateless URIs with folder structure XML, JavaScript Object Notation (JSON) or both Transfer of data snapshots in the message body Not commands or methods in message body

Anatomy of HTTP-messages Request Request Line Request Headers Request Body Antwort Response Status Line Response Headers Response Body

Example: GET Request GET http://localhost:21697/api/employees/12345 HTTP/1.1 User-Agent: Fiddler Host: localhost:21697 Response HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Date: Tue, 04 Nov 2014 15:48:03 GMT Content-Length: 50 {"Id":12345,"FirstName":"John","LastName":"Human"}

HTTP-Methods Create, Read, Update und Delete (CRUD) mapped to http methods Create Read Update Delete POST GET PUT DELETE Design principles: nouns instead of verbs

Example: POST https://management.core.windows.net/<subscriptionid>/services/hostedservices/<cloudservicename>/deployments http://msdn.microsoft.com/enus/library/azure/jj157194.aspx

Azure Mobile Services Mobile Services Features and Demos Advanced Features Scaling and Pricing

What are Mobile Services? Storage Authentication Logic Push Scheduler 18

Demo: Getting Started Your first Mobile Service

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 Microsoft Azure 20

The REST API Base Endpoint: https://mobileservice.azuremobile.net/tables/* Action HTTP Method URL Suffix Create POST /TodoItem Read GET /TodoItem?filter=id%3D42 Update PATCH /TodoItem/id Delete DELETE /TodoItem/id Microsoft Azure 21

JSON to SQL Type Mappings JSON Type Numeric values (integer, decimal, floating point) Boolean T-SQL Type Float(53) bit DateTime DateTimeOffset(3) String Nvarchar(max) Microsoft Azure 22

Auto-generated Columns id unique guid createdat date updatedat date version timestamp Helps with concurrency and offline Microsoft Azure 23

Backend Logic: JavaScript &.NET

Server Side Table Scripts Node.js scripts Passes through to SQL by default Intercept CRUD requests to tables.net Web API backend in Visual Studio MongoDB, Table Storage, SQL out of the box Fully customizable 25

.NET Backend Web API based w/ additional functionality, developed in and deployed from Visual Studio TableController data context can map to SQL, Table Storage, Mongo, etc Pull in NuGet modules and other.net libraries Set permissions with attributes on classes Local Debug Microsoft Azure 26

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 Microsoft Azure 27

Demo: Dynamic Schema

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 Resource Broker extension for.net and Node backends Microsoft Azure 29

Push Notifications

Push Notification Flow Microsoft Azure 31

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) Microsoft Azure 32

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 Microsoft Azure 34

User Auth Flow (server) GOOGLE FACEBOOK DEVICE TWITTER MICROSOFT ACCOUNT AAD MOBILE SERVICE

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) Microsoft Azure 36

Script Source Control

Script Source Control Creates a Git repo in Azure Node.js only, turned on by default 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 Microsoft Azure 38

Diagnostics Logging Scale

Diagnostics, Logging, Scale 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 40

Mobile Service Scaling Free: 500k calls / month / subscription Basic: 1.5M calls / unit (6) / month Standard: 15M calls / unit (10) / month Microsoft Azure

Demo: Scaling Leaving Free Mode and Turning on AutoScale

Azure Mobile Services Storage Authentication Logic Push Scheduler 43

Task for next week Use Azure Mobile Services to add user authentication to your apps http://aka.ms/azuremobileauth Choose MS Account, Facebook, Twitter, Google Save information per user after login 44