【Community open camp 2016】Azure Functions - Dino Wang

Channel 9

Azure Functions

主講:Dino Wang

Azure  Functions 介紹

  • 一個具有計算能力的一個服務類型
  • 基於雲端事件驅動,易於開發的設計
  • 提供使用才付費的計費方式
  • 免於管理伺服器的 Serverless 架構

常用應用場景

  • 排程工作
  • 使用 azure 服務所引發的各種事件處理
  • 其他 SaaS 服務的事件處理,例如 oneDrive
  • Single page app 的快速建置,可視為一個 API server
  • 行動應用的後端系統
  • IOT
  • Bot

Serverless 架構

一個不需要花心思進行資源調度的執行環境,只要上傳程式碼

Azure function app structure

triggers

  • 事件驅動的來源
  • 來源事件訊息
  • 所有function必有一個trigger事件作為起始

binding

  • 綁定資源,包含事件訊息
  • 包含輸入、輸出的資源
  • 利用預先設定綁定的雲端資源,簡化開發專注流程

Azure function 特性

 

  • 可輕易跟Azure多項服務整合 
  • 多種部署方式
  • 可選的授權服務提供者
  • 可使用多種開發語言

developer knowledge

 

  • function app:用 Azure function 開發的 app
  • Azure function:a service on Azure

App demo

範例程式

HelloWorld Function

  • 定時觸發器,作為 Azure Functions 第一個練習
  • 學習重點:熟悉 Function App 建立與線上設定、開發介面,進行第一個事件驅動的 Function。

MakeThumb Function

  • Blob 觸發器
  • 學習重點:進一步暸解 Binding,熟悉 C# 的 Function App 開發細節,並利用 GitHub 作為 Function App 的部署方式。

SlashMoedict Function

  • 給 Slack 的 Slash Command 用的 HTTP 觸發器。