Usama wahab Khan Chief Technology Officer @ Evolution Tech Office Serve and Services MVP Twitter @usamawahabkhan Blog : usamawahabkhan.blogspot.com
Azure App Service
On- Premise Co-Lo
How often should I patch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server? It takes how long to provision a new server?
How often should I patch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server? It takes how long to provision a new server?
How often should I patch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server?
How often should I patch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server?
How can I increase server utilization?
Event-driven scale Sub-second billing Abstraction of servers
Focus on Business Logic Reduced Time To Market Reduced DevOps / Ease of Scale Benefits of Serverless?
Azure Functions Process events with Serverless code. Make composing Cloud Apps insanely easy Develop Functions in C#, Node.js, F#, Python, PHP, Batch and more Easily schedule event-driven tasks across services Expose Functions as HTTP API endpoints Scale Functions based on customer demand Easily integrate with Logic Apps
Functions Programming Model Trigger (data) Input Input code Output Output • Function as a single unit of work • Functions are executed per trigger • Functions have inputs and outputs Input
Triggers and bindings
Every 15 minutes Clean tableFind and clean invalid data Example: Timer based processing
File added to Blob Storage Transform CSV to data rows CSV Power BI Chart graphic Example: Azure service event processing
Excel file saved to OneDrive Microsoft Graph API analyzes content Creates new sheets with charts Example: SaaS event processing
Loaded web page calls WebHook Completed pageCreate ad based on user p rofile Example: Serverless Web Applications architectures
Photo taken and WebHook called Stores in blob storage Produces scaled images Example: Serverless Mobile back ends
Millions of devices feed into Stream Analytics Store data in SQL Online Transform to structured data Example: Real-time stream processing
? ... Cortana Analytics answers questionsMessage sent to Chatbot Chatbot sends response Example: Real-time bot messaging
Using digital insights to optimize transactions in the real world Plexure
EVENT SWARM ENGAGEMENT CHANNELS FLEXIBLE BIG DATA PIPELINE INTELLIGENCE PIPELINE 3RD PARTY EVENT INGESTION ENGINE SQL DATA WAREHOUSE DATA LAKE STORAGE & ANALYTICS STREAM ANALYTICS WEB CUSTOM SERVICES WEARABLES POS DIGITAL DISPLAYS BOTS KIOSKS MOBILE APP SENSORS OMNI CHANNEL ENGAGEMENT WORKFLOW ORCHESTRATION ENTERPRISE INTEGRATION CUSTOM INTELLIGENCE INTELLIGENT SERVICES CUSTOM FUNCTIONS MACHINE LEARNING COGNITIVE SERVICES EXISTING NEW API GATEWAY API GATEWAY
Microsoft and Serverless Try Functions – https://functions.azure.com Try App Service – https://tryappservice.azure.com
General practices for serverless • Thick clients; thin & stateless backends • SPAs like Angular/React are your friend • Be sure to enable CORS  • Sync is nice, but Async is nicer • Async, queue based systems are more resilient • Read and internalize the reactive manifesto - http://www.reactivemanifesto.org/ • While synchronous work will happen, minimize the work done in a sync function and kick off to a queue based async process (HTTP status code 202, not 201 ) • Live and die by the cloud • Like never before, develop on the cloud, test on the cloud, ship on the cloud • Not just FaaS, but use other serverless tech that best solves the problem (like Logic Apps)
https://functions.azure.com/try https://tryappservice.azure.com
ukhan@evolutiontech.ae
Build with Serverless Applications with azure functions By usama wahab Khan

Build with Serverless Applications with azure functions By usama wahab Khan

  • 1.
    Usama wahab Khan ChiefTechnology Officer @ Evolution Tech Office Serve and Services MVP Twitter @usamawahabkhan Blog : usamawahabkhan.blogspot.com
  • 2.
  • 3.
  • 4.
    How often should Ipatch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server? It takes how long to provision a new server?
  • 5.
    How often should Ipatch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server? It takes how long to provision a new server?
  • 6.
    How often should Ipatch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server?
  • 7.
    How often should Ipatch my servers? How can I increase server utilization? How I deploy new code to my server? Which packages should be on my server?
  • 8.
    How can Iincrease server utilization?
  • 9.
  • 10.
    Focus on Business Logic Reduced Time ToMarket Reduced DevOps / Ease of Scale Benefits of Serverless?
  • 11.
    Azure Functions Process eventswith Serverless code. Make composing Cloud Apps insanely easy Develop Functions in C#, Node.js, F#, Python, PHP, Batch and more Easily schedule event-driven tasks across services Expose Functions as HTTP API endpoints Scale Functions based on customer demand Easily integrate with Logic Apps
  • 15.
    Functions Programming Model Trigger (data) InputInput code Output Output • Function as a single unit of work • Functions are executed per trigger • Functions have inputs and outputs Input
  • 16.
  • 22.
    Every 15 minutesClean tableFind and clean invalid data Example: Timer based processing
  • 23.
    File added to BlobStorage Transform CSV to data rows CSV Power BI Chart graphic Example: Azure service event processing
  • 24.
    Excel file saved toOneDrive Microsoft Graph API analyzes content Creates new sheets with charts Example: SaaS event processing
  • 25.
    Loaded web page callsWebHook Completed pageCreate ad based on user p rofile Example: Serverless Web Applications architectures
  • 26.
    Photo taken and WebHookcalled Stores in blob storage Produces scaled images Example: Serverless Mobile back ends
  • 27.
    Millions of devicesfeed into Stream Analytics Store data in SQL Online Transform to structured data Example: Real-time stream processing
  • 28.
    ? ... Cortana Analyticsanswers questionsMessage sent to Chatbot Chatbot sends response Example: Real-time bot messaging
  • 29.
    Using digital insightsto optimize transactions in the real world Plexure
  • 31.
    EVENT SWARM ENGAGEMENTCHANNELS FLEXIBLE BIG DATA PIPELINE INTELLIGENCE PIPELINE 3RD PARTY EVENT INGESTION ENGINE SQL DATA WAREHOUSE DATA LAKE STORAGE & ANALYTICS STREAM ANALYTICS WEB CUSTOM SERVICES WEARABLES POS DIGITAL DISPLAYS BOTS KIOSKS MOBILE APP SENSORS OMNI CHANNEL ENGAGEMENT WORKFLOW ORCHESTRATION ENTERPRISE INTEGRATION CUSTOM INTELLIGENCE INTELLIGENT SERVICES CUSTOM FUNCTIONS MACHINE LEARNING COGNITIVE SERVICES EXISTING NEW API GATEWAY API GATEWAY
  • 32.
    Microsoft and Serverless TryFunctions – https://functions.azure.com Try App Service – https://tryappservice.azure.com
  • 34.
    General practices forserverless • Thick clients; thin & stateless backends • SPAs like Angular/React are your friend • Be sure to enable CORS  • Sync is nice, but Async is nicer • Async, queue based systems are more resilient • Read and internalize the reactive manifesto - http://www.reactivemanifesto.org/ • While synchronous work will happen, minimize the work done in a sync function and kick off to a queue based async process (HTTP status code 202, not 201 ) • Live and die by the cloud • Like never before, develop on the cloud, test on the cloud, ship on the cloud • Not just FaaS, but use other serverless tech that best solves the problem (like Logic Apps)
  • 35.
  • 36.

Editor's Notes

  • #3 [
  • #4 It’s all you - your hardware, your VMs, your application servers, etc.
  • #5 It’s all you - your hardware, your VMs, your application servers, etc.
  • #6 It’s all you - your hardware, your VMs, your application servers, etc.
  • #7 It’s all you - your hardware, your VMs, your application servers, etc.
  • #8 It’s all you - your hardware, your VMs, your application servers, etc.
  • #9 It’s all you - your hardware, your VMs, your application servers, etc.
  • #10 Abstraction of servers, infrastructure and configuration of operating system Event-driven scale (no while truing) Sub-second billing Stateless Serverless compute is a fully managed service. Some refer to it as Functions as a Service OS and Framework patching is performed for you There is zero administrative tasks and no need to manage any infrastructure You just deploy your code (function) and it runs Your code runs within seconds and for very short period of time Serverless compute scales quickly (almost instantly) and vastly Automatically scales within seconds No scale configuration is required (there is no way to configure scale or limits) Scales to match any given workload. Scales from zero to handle tens of thousands concurrent functions invocations within seconds Pay only for the time your code is running Serverless compute reacts to events React, in near real-time, to events and triggers Triggered by virtually any event from Azure service or 3rd party services
  • #11 “Pinnacle of PaaS compute” Not just hardware “servers”, but software servers are also managed for you Focus on business logic, not solving technical problems not core to business Lower effort to get started makes it easier to experiment (bots, etc.) Benefits of “serverless” Mono lithic to loosely coupled copument
  • #16 Function as the unit of work Functions are executed; they start and finish Functions have inputs and outputs
  • #17 https://azure.microsoft.com/en-us/documentation/articles/functions-triggers-bindings/ We will show in the next demo that the portal has more binding and more granular per service
  • #20 https://azure.microsoft.com/en-us/pricing/details/functions/ Execution Time $0.000008/GB-s 400,000 GB-s free per month Total Executions $0.20 per Million Executions 1 Million Executions The example below illustrates the execution time included with the Azure Functions free grant of 400,000 GB-s. For memory tier size of 128MB, the 400,000 GB-s free grant allows for 3,200,000 seconds of execution time per month ((400,000 * 1,024)/128) For the largest available memory tier size of 1,536MB the free grant will allow for 266,666 seconds of execution time per month ((400,000 * 1,024)/1,536) A 1,536MB Function App in the West US region takes 1 second to execute and executes 2,000,000 times in a month resulting in a cost of $20.80 for Execution time.
  • #30 Now let’s take a look an incredibly cool company Plexure, which has taken Azure Functions to the next level.
  • #31 For those who aren’t familiar with Plexure, they offer a rich platform to help businesses measure, optimize, and influence customer transactions and engagement in their stores.
  • #32 Here you can see an overview of their architecture, heavily leveraging lots of Azure services, including both Azure Functions and Logic Apps, two Serverless technologies. The awesome thing that Plexure has done is that they not only utilize these services to help process events from their own platform, but they actually offer the ability for their own users to write Functions within their UX to use as part of a workflow. (I’ll spend some time here to let the impact of that sink in)