Serverless and Azure Functions Introduction

017286889e25c87cb44b20ceca2d1d79?s=47 Daron Yondem
December 19, 2017

Serverless and Azure Functions Introduction

This is part of a full day Serverless training I hosted for Microsoft Turkey in Istanbul introducing Azure Functions as a Serverless Platform.


Daron Yondem

December 19, 2017


  1. Serverless and Azure Functions Introduction Daron Yöndem @daronyondem

  2. Serverless architectures refer to applications that significantly depend on third-party

    services (knows as Backend as a Service or "BaaS") or on custom code that's run in ephemeral containers (Function as a Service or "FaaS")
  3. What is Serverless? • The real dream of PAAS •

    No Infrastructure, No Containers • Scalable as hell! • Granular Billing (GB/s) • No commitment, no hardware provisioning (really?)
  4. What’s wrong with containers? • Containers are the new VMs!

    • Server Patching > Container Image Batching • Container Orchestration is hard.
  5. Serverless != Microservices • You can have a fleet of

    EC2 instances, running containers, orchestrating and still worry about infrastructure. • You can have dozens of functions tightly coupled and delivered as a behemoth.
  6. Azure Functions 101 • Javascript, C#, C# Script, Python, PHP,

    Batch, Powershell • Timer-based processing • SaaS Event Processing • Full Serverless Architecture • Real-Time Stream Processing • Real-Time Bot Messaging • Serverless mobile back-ends
  7. Creating our first “Hello World” function! DEMO

  8. None
  9. None
  10. None
  11. None
  12. Out of the Box Authentication of HTTP Endpoints • Anonymous

    • Function Key • Host Key
  13. None
  14. None
  15. None
  16. None
  17. None
  18. Anatomy of a Function • A “Run” file that containing

    the function code • A “Function” file containing all service and trigger bindings and parameters • A “Project” file containing project assembly and NuGet package references • App Service settings, such as connection strings and API keys
  19. Running Functions Locally V1 Only on Windows npm install -g

    azure-functions-core-tools V2 with .NET Core on all platforms npm install -g azure-functions-core-tools@core Initialize your first function func init MyFunctionProj
  20. Precompiled functions with C# and Visual Studio DEMO

  21. None
  22. None
  23. None
  24. None
  25. Application Settings • local.settings.json will have all your local settings

    on the dev machine. • C# can also be read in your code as environment variables. Use System.Environment.GetEnvironmentVariable or ConfigurationManager.AppSettings. • In JavaScript, use process.env
  26. Where can I deploy my Functions? • Extend the existing

    Azure App Service platform • Go with “Consumption Plan” and be pure Serverless • Deploy Functions Runtime on an on-prem location in your Private Cloud.
  27. Links worth sharing Documentation • Azure Functions Runtime (Run

    on-prem) • Documentation for the host.json file • More CLI commands to run functions locally •
  28. Thanks | @daronyondem Download slides here;