March ‘15 Azure App Service Launch July ‘14 BizTalk 2013 R2 GA >1000s Community Newsletter...

Preview:

Citation preview

Stephen Siciliano, Senior Program Manager

Ilya Grebnov, Principle Software Engineer

Logic Apps

2-707

Integration in AzureAzure App ServiceDemo: Archive tweets to DropboxArchitecture backgroundDemo: Text if your site is down

Agenda

March ‘15

Azure App Service Launch

July ‘14BizTalk 2013 R2 GA

>1000sCommunity Newsletter Subscribers

Feb ‘15API Management GA

@ WPC

App Integration Partner Awards

>100sBlog Posts driving

adoption & engagement

Apps using Microsoft Azure

Agility Insight

Hyper-scale

Mobile Services

Key app services in Azure previously

Azure Websites

BizTalk Services

Key Learnings

• Validated the brand & cloud design patterns

• Hybrid is critical & a differentiator

• Feature & capability gaps:

• Out of box sources & destinations

• Pipeline templates, custom code support

• Long running workflows, parallel execution

• Needs a lot more investment!

BizTalk Services

Learn

ing

Eff

ort

Complexity of problem

HACK ZONE

Vision

iPaaS Leader

RichEcosystem

Democratize Integration

YourBusiness

YourCustomers

YourBusiness

YourCustomers

Empoweryour

employees

Engageyour

customers

Transformyour business

insight agility internet scaleto any device

APPSYour

BusinessYour

CustomersEmpower

your employees

Engageyour

customers

Transformyour business

Mobile Services

Key app services in Azure today

Azure Websites

BizTalk Services

Unique integrated offering

Build rich, engaging & intelligent apps

Scale as your business grows

Azure App Service

API APPSEasily build and

consume APIs in the cloud

WEB APPSWeb apps that scale with

your business

LOGIC APPSAutomate business

process across SaaS and on-premises

MOBILE APPSBuild Mobile apps for

any device

One integrated offering

All of the Azure-native capabilities you’d expect

• Full audit logs of all management operations• Role-based access control • Deployment lifecycle with Resource Manager• Resource Management API + resource PowerShell • On-prem support with next release of Azure Pack

One low price

• Box• Chatter• Delay• Dropbox• Azure HD Insight• Marketo• Azure Media Services• OneDrive• SharePoint • SQL Server• Office 365• Oracle

• QuickBooks• SalesForce• Sugar CRM • SAP• Azure Service Bus• Azure Storage• Timer / Recurrence• Twilio• Twitter• IBM DB2 • Informix• Websphere MQ

• Azure Web Jobs• Yammer• Dynamics CRM• Dynamics AX• Hybrid Connectivity

• HTTP, HTTPS • File• Flat File• FTP, SFTP• POP3/IMAP• SMTP• SOAP + WCF

• Batching / Debatching

• Validate• Extract (XPath)• Transform

(+Mapper)• Convert (XML-JSON)• Convert (XML-FF)

• X12• EDIFACT• AS2• TPMOM• Rules Engine

Connectors

Protocols BizTalk Services

Built-in API Connectors

WEB APPS

Full capability set available including:

• .NET, Node.js, Java, PHP, and Python

• WebJobs for long running tasks

• Integrated VS publish, remote debug…

• CI with GitHub, BitBucket, VSO

• Auto-load balance, Autoscale, Geo DR

• Virtual networking and hybrid connections

• Site slots for staged deployments

Web apps run as-isno changes required

New capabilities for Mobile apps:

• Webjobs for long running tasks

• CI with GitHub, BitBucket, VSO

• Auto-load balance, Autoscale, Geo DR

• Virtual networking and hybrid connections

• Site slots for staged deployments

Mobile services plusa whole lot more

MOBILE APPS

New Logic Apps for easy automation

• No code designer for rapid creation

• Dozens of pre-built templates to get started

• Out of box support for popular SaaS and on-premises apps

• Use with custom API apps of your own

• Biztalk APIs for expert integration scenarios

Automate SaaS andon-premises systems

LOGIC APPS

Easily use cloud or custom APIs:

• Dozens of built-in APIs for popular SaaS

• An ecosystem of APIs for any need

• Create and publish custom, reusable APIs

• Visual Studio tooling with one click publish and remote debugging

• Automatic client SDK generation for many languages

Create, consume andhost APIs more easily

API APPS

EAI Features v1 v2

XML Transformation

Validation

Content Based Routing

Request Response

AD Auth

OAuth

Flat File

JSON

XML

Connector Extensibility

Custom Code

B2B Features v1 v2

AS2 / X12 / EDIFACT

Agreement Decoupling

Batching / De-batching

Archiving

Transform

Trading Partner Management (API & Portal

Vertical Extensibility

Tracking

Customer Code

Workflow Features v1 v2

Long Running

Browser Designer

Control Flow

Instance Management

Tracking

Large Messages (1GB)

Config Support

Expressions

Rules Features v1 v2

Vocabulary

Policy

Sources (XML only today)

Test Policy

Browser Rule Editing

Other Features v1 v2

OOB Connectors

Marketplace

Hybrid Connectivity

Custom Code Isolation

Unified Portal

Auto Update with Opt Out

V1 = BizTalk ServicesV2 = App Services (BizTalk + Logic)

Target audience is anyone who can use Azure

… but not necessarily business users or consumers

Demo: portal designerArchive tweets about your company to Dropbox

Logic apps for orchestration across API apps1. Implicitly – whenever you

reference the output of an action you’ll depend on that action executing first

2.Explicit “dependsOn” condition – you can mark certain actions to run only after previous ones have completed

3.Explicit “expression” condition – a complex function that evaluates properties of other actions

Repeating

• Loop a single action over a list of items• Runs the action N times• You can get at all of the statuses for each

action• Tip: when you have multiple collections use:

• "repeat" : "@range(0,length(body('connector1')))"

• …• "inputs" : "@concat(body('connector1')

[repeatItem()], body('connector2')[repeatItem()])"

Conditionals

• Logic on a trigger or action• For triggers conditionals are post-

conditions• For actions conditionals are pre-

conditions

• You can do conditionals inside of repeats to perform as a filter

ArchitectureThe Azure Resource manager is a highly-scalable geo-distributed system that handles millions of resources across 100,000’s of subscriptions. Can create 200 node cluster in < 5 minutes!

Same underlying engine…

RESOURCE MANAGER

• Can handle thousands of parallel deployments per stamp

• Resilient against failure – retries with “at least once” guarantee

• Simple, declarative JSON template

• Automatically infers dependences between resources

LOGIC APPS

• Can handle thousands of parallel runs per stamp

• Resilient against failure – retries with “at least once” guarantee

• Simple, declarative JSON definition

• Automatically infers dependences between actions

… more power

RESOURCE MANAGER

• 8 functions for basic referencing and string functions

• Can only PUT resources into resource groups

• Auth must be through AAD

• Triggered manual through UI or API

LOGIC APPS

• Over 50 functions from string manipulations to math, to sets operations, to logical operators

• All HTTP operations supported on any arbitrary endpoint

• Supports many OAuth providers, AAD, Cert auth, or Basic auth

• Different ways to be triggered including recurrence

{ "parameters": { ... }, "triggers": { ... }, "actions": { ... }, "outputs": { ... }} 

Logic Apps Workflow definitions

Parameters• Re-using values, or even complex objects, throughout the

definition, which makes it easier to comprehend.• Separate out config from the definition itself, making

sharing easy, as well as across different environments.

"parameters": { "<parameterName>": { "type": "<type-of-parameter-value>", "defaultValue": "<optional-default-value-of-parameter>", "allowedValues": [ "<optional-array-of-allowed-values>" ] } }

Triggers• Evaluated at recurring intervals.

• State maintained across executions.

"<name-of-the-trigger>": { "type": "Http|ApiApp|Recurrence", "inputs": { "<trigger-specific-inputs>" }, "recurrence": { "frequency": "Second|Minute|Hour|Week|Month|Year", "interval": "<recurrence interval in units of frequency>" }, "conditions": [ "<array-of-post-conditions>" ] }

Actions• Actions could depend on other actions.• Order of execution determinate by dependencies.

• State maintained across executions.

"<name-of-the-action>": { "type": "Http|ApiApp|Workflow", "conditions": [ "<array-of-pre-conditions>" ], "repeat": "<array-to-repeat-over>", "inputs": { "<action-specific-inputs>" } }

Template Language Expressions (TLEs)JSON values in template can be literals or expressions (special kinds of strings)

• Denoted by the '@' symbol: "@exp"• Or in form of string interpolation "… @{ exp } …"

Expressions evaluation

• Static (agnostic to execution context): "@sum(3, 5)"• Dynamic (can only evaluated at runtime): "@outputs('act1').body"

Demo: Visual StudioSend you a text message if anything is down

API APPSEasily build and

consume APIs in the cloud

WEB APPSWeb apps that scale with

your business

LOGIC APPSAutomate business

process across SaaS and on-premises

MOBILE APPSBuild Mobile apps for

any device

App Service

Introduced this week:

App Service Environments

Get Started w/ App Service!

• Logic & API Apps in preview

• Build & submit your API Apps

(connectors)

• Get started for free @ azure.com

RoadmapInvestments

• Feedback & data-driven

development

• Ship Azure App Service on-premises

• Grow the Ecosystem & Community

Resources• PMs, MVPs & community @ //build/

• https://tryappservice.azure.com

• Twitter: @iscsus, @ilyagrebnov

Q & A

Improve your skills by enrolling in our free cloud development courses at the Microsoft Virtual Academy.

Try Microsoft Azure for free and deploy your first cloud solution in under 5 minutes!

Easily build web and mobile apps for any platform with AzureAppService for free.

Resources

© 2015 Microsoft Corporation. All rights reserved.

Recommended