Azure functions infrastructure - Best practices

Quinn Cheong 1 Reputation point
2020-06-03T10:26:18.49+00:00

Hello all,

I was reading the AZ Functions best practices documentation and I understand that it is recommended to avoid long running functions. Could I ask if that corresponds to the absolute runtime of the function?

I am asking this question because I am planning to make multiple api calls to external apis in 1 function app. E.g google maps api / google places api. Is this practice recommended, or should i make these api calls in a separate function app and manage the whole workflow with something like AZ Logic apps.

I presume that if we go by a per-request basis, when someone calls my AZ Function, it wont take too long even though I could be making multiple api calls to external resources, hence I would not hit the time-out and could get away with just using 1 function app. I am however, unsure if this is the right way to do it.

Apologies if this question is a little basic as I have just started using MS Azure. Any help and feedback would be great!

Thanks.

Best regards,
Quinn

Azure Functions
Azure Functions
An Azure service that provides an event-driven serverless compute platform.
2,601 questions
No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Alexandre 341 Reputation points
    2020-06-04T12:41:00.243+00:00

    You should really have a look at Durable Functions. This is an extension of the Azure Functions which allows you to do long-running operations, worflows in a stateful way.
    It depends exactly what you are trying but I think it could correspond to your use case. No problem of time-out with Durable Functions as you separate your different calls in different functions (all in the same function app), it's really nice to do workflows where you will have multiple operations / calls.