Serverless Azure A Gentle Introduction to Microsoft Azure
- Slides: 42
Serverless Azure A Gentle Introduction to Microsoft Azure Logic Apps & Functions H from zero to wicked useful in about an hour my ELLO Granite State Share. Point Users Group Thu 07 -Sep-2017 6: 00 -7: 30 PM Bill Wilder, CTO, Finomial Corporation na me is Bill Wi lde r
8 x recipient cto author founder
Goals: By the end of this talk… Demystify Logic Apps and Functions (aka Function Apps, Azure Functions, Functions as a Server (Faa. S)). Realize that Logic Apps and Functions are completely independent of each other, but can be used together. Both are serverless technologies.
Logic Apps
@Serverless. Azure
Just hitting this URL (behind the scenes) via HTTP GET to invoke the Logic App: https: //prod 11. northcentralus. logic. azure. com: 443/workflows/786 d 9 f 6792 f 643 bd 8 77 cc 2 e 863 ae 4425/triggers/manual/paths/invoke? api-version=2016 -0601&sp=%2 Ftriggers%2 Fmanual%2 Frun&sv=1. 0&sig=b. Sl 6 WTGb. TSJe 2 ph HXPpor. WYFbg. Rp 6 w 6 ZD 0 NH 8 e. BVLnc
@Serverless. Azure
Triggers + Actions = Logic App
Triggers + Actions = Logic App Triggers Some event – web hook, timer, user action, etc. + Actions Your response to trigger – based on trigger & data = Logic App Serverless Software Component
How is this possible? Connectors • A Component Model for the Cloud • The code behind Triggers & Actions • Front simple microservers or whole systems • Ecosystem is blooming • Gallery of Microsoft-maintained connectors • Community-contributed connectors are available • You can create your own connectors (via Open API (Swagger)) • Well-defined • Logic App Workflow Definition Language
Triggers • Timer • User action • Action from some other system • Queue Message, Blob Creation, Webhook/HTTP Call Examples: tweet, email, slack, calendar event, something changed • Business event: User signed up on my website • Code event: New version of file checked into Git. Hub • Azure event: A new VM was provisioned
Actions • Call an API • Trigger more actions • Use data from triggers for filtering/decisions • Pass along data from triggers in carrying out actions • Can be custom • Huge gallery • New component model for software developers
Demo Time Build the tweeter we just experienced Build other integrations (dangerous ad hoc demos ) HTTP 202 JSON Schema Workflow Definition Language Use trigger data & conditional processing
JSON Schema example (tweet) { "type": "object", "properties": { "tweet": { "type": "string" } } }
Sharepoint + Logic Apps • https: //docs. microsoft. com/en-us/azure/connectorscreate-api-sharepointonline
Function Apps
Function Apps are Code with Triggers • Timer • User action • Action from some other system • Queue Message, Blob Creation, Webhook/HTTP Call • (Look familiar? )
Error Handling • Try it • Retry it • Deal with the failure • Track with logging & telemetry • Monitor with alerts & dashboards • “Scopes” • https: //docs. microsoft. com/en-us/azure/logic-appsexception-handling
Azure Function that returns 500 75% of calls • https: //gist. github. com/codingoutloud/151976063 b 1 e 9367369 f 1505 f 6 cca 66 e
Sharepoint + Functions • https: //dev. office. com/sharepoint/docs/apis/webhooks/sharepointwebhooks-using-azure-functions
Demo Errors/Retries What happens if there’s an error? Command Line Azure Function Monitoring
Serverless
Serverless Computing is characterized by… • Deployment units are small, loosely-coupled components • More “no server configuration” than Paa. S • Cloud-friendly pay-by-the-drink billing
“Multiple Triggers” • One trigger type can be assigned per Logic App • Many parallel instances of your Logic App can fire to absorb load • Limits? • https: //docs. microsoft. com/en-us/azure/logic-apps-limitsand-config • Why would you want to limit it? • Singleton available
Pricing Logic Apps • Consumption https: //azure. microsoft. com/en-us/pricing/details/logic-apps/ Azure Functions • Consumption or App Service Plan https: //azure. microsoft. com/en-us/pricing/details/functions/
Flow vs. Logic Apps • https: //portal. office. com/myapps • https: //flow. microsoft. com/ • Flow is “civilian” version of Logic Apps: “Grow up to Azure Logic Apps” https: //flow. microsoft. com/en-us/blog/q 2 -2017 update/ • Same connectors: https: //docs. microsoft. com/enus/azure/connectors/apis-list • Same underlying core • Comparison by Microsoft: https: //docs. microsoft. com/en- us/azure-functions/functions-compare-logic-apps-ms-flow-webjobs
Biz. Talk vs. Logic Apps “To simplify the customer experience across our enterprise integration services, we have incorporated the Azure Biz. Talk Services capabilities into Logic Apps and Azure App Service Hybrid Connections. ” –Microsoft Announcement on May 31, 2017 • https: //azure. microsoft. com/en-us/updates/azure-biztalk-servicessimplifying-our-azure-offerings/ • https: //docs. microsoft. com/en-us/azure/logic-appsenterprise-integration-overview
Power. Apps vs. Logic Apps • https: //powerapps. microsoft. com/en-us/tutorials/getting-started/
Zapier vs. Logic Apps
IFTTT vs. Logic Apps
Dev & Deploy • Visual Studio (2015+) - https: //docs. microsoft. com/en-us/azure -functions/functions-develop-vs • Azure Portal • ARM Templates • Power. Shell • REST API
Official Twitter Accounts (pretty sure ) @Logic. Apps. IO @Azure. Functions @Azure. Api. Management @Power. Apps @Cosmos. DB
Nu. Get Packages • Conference session (video) on making Nu. Get packages for Azure Functions: https: //channel 9. msdn. com/Events/Iglooconf 2017/Azure-Functions-Nu. Get-Superpowers • One answer to reusing code within Azure Functions (and within other systems too). • Another answer is to reuse ’services’ – like Azure Functions
Postman • Just a tool, but a popular/handy one • https: //www. getpostman. com/ • Useful for testing HTTP actions, including API calls • Free • Slack channel – https: //postmancommunity. slack. com/ • @postman
Request. Bin • Just a tool, but a popular/handy one • https: //requestb. in/ • Useful for inspecting HTTP webhook payloads and workflow steps • Free • @requestbin - https: //twitter. com/requestbin
{JSON: Schema} • https: //jsonschema. net/#/editor • @JSONSchema
Scheduler • https: //cronwtf. github. io/ • https: //crontab. guru/#0_*/5_*_*_*
Duration – per ISO 8601 • https: //en. wikipedia. org/wiki/ISO_8601#Durations • PT 5 M • PT 2 D • PT 36 H vs. P 1 DT 12 H
Logic Apps Workflow Definition Language • https: //docs. microsoft. com/en-us/azure/logic-appsworkflow-definition-language
Only Scratching the Surface! Potential follow-up topics: Azure API Apps Dev. Ops Experience Monitoring (and. so. many. more. )
Questions? Find this slide deck here Bill Wilder @codingoutloud@gmail. com blog. codingoutloud. com linkedin. com/in/billwilder See you at Boston Azure bostonazure. org
- Azure serverless consultants
- Sand: towards high-performance serverless computing
- Statistics a gentle introduction
- Common lisp: a gentle introduction to symbolic computation
- Azure plan vs azure global csp
- Veam cloud connect azure
- Free threat modeling tools
- Private cloud microsoft
- Case study on microsoft azure in cloud computing
- Microsoft azure olap
- Azure developer support
- Azure microsoft
- Microsoft azure security privacy and compliance
- Online servives
- Microsoft azure
- Microsoft azure channel incentive
- Landing zone azure
- Microsoft azure datacamp
- Microsoft azure cdn pricing
- Microsoft azure certified
- Microsoft azure notification hubs dashboard
- Case study on microsoft azure in cloud computing
- Azure.microsoft.com
- Biztalk business rules composer
- Microsoft azure
- Gentle persuasive approach
- Do not go gentle into that good night personification
- Youtube do not go gentle into that good night
- A gentle answer turns away wrath
- Romeo and juliet board game
- Romeo and juliet quotes
- I pray thee gentle mortal sing again
- Alliteration n
- Personification for ice cream
- Gentle wave
- Fundraising is the gentle art of teaching the joy of giving
- Hyperbole in do not go gentle into that good night
- What news does antonio receive as the play ends?
- The innermost layer of the meninges, “gentle mother”
- Do not go gentle into that good night paraphrase
- Gentle apps
- Shimobue
- Do not go gentle into that good night metaphors