0
votes

I have an Azure function for IoT scenario, having a predictable event load. Currently, 15 functions running under same function app (single dll)

Now we are planning to create a separate function for each function (15 dll projects).

Why 15 function?

  1. One function handling Millions for events per day, will put this function in the dedicated app service plan.
  2. Rest 14 function has a very limited load, so we are planning to move into consumption plan. 1 million executions are included free each month.
  3. Every function can scale independently

Concern

  1. I need to create 15 projects in my solution (more will be added according to this design)
  2. Too much resources will display on portal (15 functionApp + 15 App service plan + 1 storage account (common for all functions)), Multiply numbers of env (DEV+INT+QA+Perf+Stag+Prod) Total 186 resources

This design doesn't look good for me but has some advantages. Working in Agile mode :P

Is there any limitation/Issue with the number of resources wise or any other in this design?

1

1 Answers

2
votes

Based on this post by Fabio, you could just have 1 App Service for all your Function Apps using Consumption Plan. Also, if the load of all your functions (on Consumption Plan) combined would be less than 1 million executions, you could probably just have them in one app too but do consider the limits that functions in Consumption plan pose.

As for the number of resources, I wouldn't think that should pose any problem directly except the Resource Group limits.