I'm hosting some of my Azure Functions on an App Service plan, in order for the function to be able to communicate with a virtual network (through point-to-site). Most of these functions are timer based, meaning that they will trigger at a certain time every month, date, hour, etc.
I've noticed when looking through the metrics, that the function apps run on all instances in my app service plan. I can see why this is a good choice for something like queue triggered or HTTP triggered functions.
What about my timer triggered functions? I just want to make sure that each function run on the configured schedule. Having 10 instances of the function host running (in the case where I have 10 instances in my app service plan) seems to be a vaste of memory, since every function host uses at least 30 mb of memory (300 mb in total for the 10 instances).
Anyone got some recommendations? I know that it would be more efficient to move these to consumption based functions, but then I don't have the possibility of connecting to a virtual network.
Update: There's a config option named WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT
but this only work on the consumption plan.