Functions

  • No maintenance
  • No processes
  • Nothing VM related

Bindings are defined in function.json

"bindings": [
  { 
	"name": "fanMail",
	"type": "queueTrigger",
	"queueName": "fanMailQueue",
	"connection": "fanMailRoom"
  },
  {
    "name": "fanMailRepo",
	"type": "blob",
	"path": "samples-workitems/{queueTrigger}",
	"direction": "in",
	"connection": "fanMailRoom"
   }
]

Developer Responsibilities

  • The code that does the work
  • Trigger
  • Input and output bindings

Hosting

  • Consumption
  • Premium
  • Also available in not-quite-serverless hosting options

Consumption vs. Premium Hosting

Consumption Plan Premium Plan
Pay only when functions are running More predictable pricing
Scale out automatically, even during periods of high load Premium instance sizes of one, two, or four cores and faster scaling
Times out after a configurable period; up to 10 minutes Unlimited execution duration, with 60 minutes guaranteed
Idle function apps must “cold start” on next request Continuously running instances to avoid any cold start
Less complex architecture VNet connectivity

References