Download presentation
Presentation is loading. Please wait.
Published byBerniece Walton Modified over 6 years ago
1
A day in the life of an Azure serverless developer
5/21/ :08 AM BRK3246 A day in the life of an Azure serverless developer Donna Malayeri @lindydonna Chris Anderson @crandycodes © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
2
Prologue: Why serverless?
5/21/ :08 AM Prologue: Why serverless? © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
3
The evolution of application platforms
Microsoft Tech Summit FY17 5/21/ :08 AM The evolution of application platforms On-Premises IaaS PaaS Serverless © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
4
Before cloud What is the right size of servers for my business needs?
What happens in case of server hardware failure? How do I deploy new code to my server? Which packages should be on my server? How can I increase server utilization? What media should I use to keep backup? How can I scale my app? What size of servers should I buy? Who monitors my App? How often should I backup my server? Who monitors my Servers? What storage I need to use? Which OS should I use? Who has physical access to my servers? Do I need secondary network connection? Are my server in a secure location? How many servers do I need? Do I need a UPS? What happens if the power goes out? How often should I patch my servers? How can I dynamically configure my app? It takes how long to provision a new server?
5
Then came IaaS—table stakes for digital business
What is the right size of servers for my business needs? How can I increase server utilization? How many servers do I need? How can I scale my app? How often should I patch my servers? How do I deploy new code to my server? How often should I backup my server? Which OS should I use? Which packages should be on my server? Who monitors my App?
6
Then PaaS, critical for digital transformation
What is the right size of “servers” for my business needs? How can I increase “server” utilization? How many “servers” do I need? How can I scale my app?
7
Serverless, the future platform for next gen apps
How do I architect my app to become Serverless?
8
What is Serverless? Abstraction of servers Event-driven/ instant scale
Micro-billing
9
Benefits of Serverless
Manage apps, not servers Reduced DevOps Faster time to market
10
Serverless application platform components
Development Local development Monitoring IDE support Integrated DevOps Visual Debug History Platform Functions Logic apps Event Grid Developer productivity Visual designer Manage all events in one place Triggers and Bindings 100+ connectors Near real-time delivery Flexible deployment options Functions orchestration Broad coverage Analytics Database Storage IoT Security & Access Control Intelligence
11
Serverless scenarios: anything that responds to events
Timer-based processing Clean table Every 15 minutes Find and clean invalid data Real-time stream processing Millions of devices feed into Stream Analytics Store data in SQL DB Transform to structured data Mobile app backends Photo taken and WebHook called Stores in blob storage Produces scaled images Real-time bot messaging ... Chatbot sends response Message sent to Chatbot ? Cortana Analytics answers questions
12
New Visual Studio 2017 tooling
Microsoft Build 2017 5/21/ :08 AM New Visual Studio 2017 tooling Based on class libraries Get the full power of IntelliSense, unit testing, and local debugging Use attributes to define triggers and bindings Learn more at © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
13
Visual Studio 2017 Tooling [FunctionName("CreateMosaic")]
public static async Task CreateMosaicAsync( [QueueTrigger("generate-mosaic")] MosaicRequest mosaicRequest, [Blob("%input-container%/{InputImage}", FileAccess.Read)] Stream sourceImage, [Blob("%tile-image-container%")] CloudBlobContainer tileContainer, [Blob("%output-container%/{InputImage}", FileAccess.Write)] Stream outputStream)
14
Act I Our story begins 5/21/2018 10:08 AM
© Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
15
Demo Photo mosaic 5/21/2018 10:08 AM
© Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
17
Features we’ll cover Azure Application Insights Local debugging
Run locally Publish Continuous Integration Outer loop Inner loop
18
Architecture SPA Function App storage/index.html /RequestMosaic
Blob Storage - images Save image Settings Queue trigger SPA Blob Storage storage/index.html / storage/index.html /RequestMosaic /api/RequestMosaic /Settings /api/Settings Function App
19
Demo Chris finds and fixes a bug
5/21/ :08 AM Demo Chris finds and fixes a bug © 2013 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.
20
Deployment process Production Test Chris-Dev Manual sync
Push (automatic)
21
Demo Ship to dev, test, production
22
Act III Cross-platform tooling
5/21/ :08 AM Act III Cross-platform tooling © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
23
Core Tools is now cross-platform!
5/21/ :08 AM Core Tools is now cross-platform! Ported to .NET Core Available in Azure in preview with the “beta” runtime Can run Core Tools on Mac/Linux Try it out and provide feedback! © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
24
Demo Photo Mosaic on a Mac
© Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
25
Act IV Chris is on servicing
5/21/ :08 AM Act IV Chris is on servicing © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
26
Monitoring Monitor Alert Diagnose Learn What is my app doing?
5/21/ :08 AM Monitoring Monitor What is my app doing? Alert Is my app unhealthy? Diagnose Why is it unhealthy? Learn What was my app doing? © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
27
Azure Application Insights
5/21/ :08 AM Azure Application Insights Extensible Application Performance Management (APM) Rich data: Metrics, Traces, Exception tracking, Dependencies, Page Views, User data, custom events Easy to use graph/alerts, powerful analytics portal, integration with PowerBI and other analytics services © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
28
Demo Application Insights
5/21/ :08 AM Demo Application Insights © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
29
Code available on GitHub
Photo Mosaic github.com/lindydonna/photo-mosaic Content moderator webpage and functions CoderCards – trading card generator Single page app using proxies
30
Summary Serverless devs need powerful tools
Debug locally using Visual Studio and the Azure Functions Core Tools Monitor and troubleshoot using Application Insights Use continuous integration to deploy to production Now cross-platform! Get the code at github.com/lindydonna/photo-mosaic Make your own mosaic! for product news
31
Please evaluate this session
Tech Ready 15 5/21/2018 Please evaluate this session From your Please expand notes window at bottom of slide and read. Then Delete this text box. PC or tablet: visit MyIgnite Phone: download and use the Microsoft Ignite mobile app Your input is important! © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.