Azure Functions 如同其他 Azure應用服務 一般,執行於 App Service Plan (應用服務計畫)[2] 之上,不過為了要達到無伺服器架構的目標,Azure Functions 還多了一個使用模式,稱為消費計畫 (Consumption Plan),以執行次數 (Executions) 和執行時的資源耗用量 (Resource Consumption) 為計費基礎 [3],但使用者可選擇要用原始的 App Service Plan 還是要使用計量級的 Consumption Plan 作為計費單位。
功能
Azure Functions 基於無伺服器管理架構,因此其功能大多數都落在程式碼的開發、繫結的設定與安全金鑰的管理,當然也可以依需求進一步的設定其所處的 App Service Plan (即使是 Consumption Plan 也有) 的進階設定,例如加上 SSL 或增修應用程式組態檔的設定等等。
publicstaticTask<HttpResponseMessage>Run(HttpRequestMessagerequest,stringcategory,int?id,TraceWriterlog){if(id==null)returnreq.CreateResponse(HttpStatusCode.OK,$"All {category} items were requested.");elsereturnreq.CreateResponse(HttpStatusCode.OK,$"{category} item with id = {id} has been requested.");}
而同樣功能的 node.js 程式碼如下:
module.exports=function(context,req){varcategory=context.bindingData.category;varid=context.bindingData.id;if(!id){context.res={// status: 200, /* Defaults to 200 */body:"All "+category+" items were requested."};}else{context.res={// status: 200, /* Defaults to 200 */body:category+" item with id = "+id+" was requested."};}context.done();}