This Azure Functions webcast was hosted by Jeff Hollan and Alex Karcher.
Azure Functions Premium plan in Preview – It is celebration Time!
This is the newest Functions hosting model! This plan enables a suite of long-requested scaling and connectivity options without compromising on the event-based scale. With the Premium plan you can use pre-warmed instances to run your app with no delay after being idle, you can run on more powerful instances, and you can connect to VNETs, all while automatically scaling in response to load.
Here is a quick comparison of Consumption plan vs Premium plan
Credits: Alex Karcher
Getting into specifically what you get with the Premium plan. Alex was very excited about the below feature
- Reserved Instances – which are going to give you controls to eliminate cold start in your app. It’s basically a buffer of pre-warmed instances that you have for your app. In the Premium plan configure the maximum and minimum scale out. i.e., something that scales dynamically, depending on your incoming load.
- Configurable Instance Size – You can also configure your instant size in the Premium plan. From P1v2 to P3v2 equivalent size. So that’s about 1 core 3.5 GB RAM machine to a 4 core 12 GB RAM machine.
- VNET Connectivity – The Premium plan allows dynamic scaling functions to connect to a VNET and securely access resources in a private network. This feature was previously only available by running Functions in an App Service Plan or App Service Environment and is now available in a dynamically scaling model by using the Premium plan.
- Longer Run Duration
Functions Premium plan offers a solution to the delay when calling a serverless application for the first time. This delay is commonly referred to as cold start, and it’s one of the most common problems amongst serverless developers.
In the below graph, the lime green line represents the incoming load and the dark green line shows the available consumption workers in a consumption plan. In a perfect world the moment you get your first request you have one worker available and the moment that worker is fully satiated you have a second worker available and so forth it continues as requests fall.
But in reality, a lot of scale curves look something like the below graph, when the very first request comes in you have to wait some amount of time for that first worker to come online. It can be a long time before your first worker comes on.
In the Premium plan, you have the ability to specify the number of pre-warmed instances that are kept warm with your code ready to execute. When your application needs to scale, it first uses a pre-warmed instance with no cold start. Your app immediately pre-warms another instance in the background to replenish the buffer of pre-warmed instances. This model allows to avoid any delay on the execution for the first request to an idle app, and also at each scaling point. In Preview, only one pre-warmed instance per site is allowed, but that is expected to go up to higher numbers in the following weeks.
- Bundles for extensions with runtime – Bundles takes all of the extensions that you will install in current V2 functions to use any bindings. So, if you want any trigger type or binding other than HTTP, like Storage, Cosmos DB, Event Hub, Event Grid those all require an extension. These extensions require a nuget install, so with bundles, it takes all of those packages and put them in one functions platform bundle that you can reference.
- .NET Dependency injection (so soon!) – Jeff showcased a precursor screen of how this will look like.
- Azure DevOps improvements
- PowerShell support for v2 – Available in Private preview now. Give the Azure Functions a tweet, if you want to try it out.
- Super secret stuff for Build – The team is building a super secret feature for Build. Jeff and Alex will show it on their presentation at Build.
- Global Integration Bootcamp – Some amazing content around Functions, Durable Functions, and Serverless were presented. Naming a few popular in Twitter were @pacodelacruz @robertbemejo, @SteefJan and more.
- @nthonyChu – Real-time Speech-to-Text and Translation with Cognitive Services, Azure Functions, and SignalR Service
- @ChloeCondon – An Ambiverts Guide to Azure Functions
- @GaryPretty – Generating realistic speech on-the-fly with Azure Functions and Cognitive Service’s Speech APIs
- @andrewlocknet – Creating my first Azure Functions v2.0 app: a WebHook and a timer
- Intelligent Cloud Conference – Copenhagen (Apr 8-10)
- ngConf – Salt Lake City (May 1-3)
- PyConf 2019 – Cleveland (May 3-5)
- Microsoft Build – Seattle (May 6-8)
- Integrate 2019 – London/Seattle (Jun 3-5/24-26)
- DEVIntersection – Orlando (Jun 11-13)
You can watch the recorded video here.