Search code examples
azure-functionsazure-pipelinesazure-devops-self-hosted-agent

Best choice between Azure Function and Azure DevOps to run a simple program


I have a simple program that does data scanning and calculation based on my backend database. The requirement is finding a way to run that program scheduled.

Now I have two choice, one is Azure DevOps Pipeline which supports schedule run. The other is Azure Functions which also meets my requirement.

It seems both of them can work for me. However, I have many similar programs, before I make change, want to know which way is better.

Some knowledge from me. I know that Azure DevOps Pipeline is most like CI/CD. It's used to setup environment but not designed as a host to run program. Azure function is designed for small program to run. However, set up things on Azure DevOps pipeline is much more easier and cheaper because it already provides some free host VMs.

Any best practice of that? Or any reason to choose? Wish to identify which one is formal.


Solution

  • Azure Devops is used to automate CI/CD not calculations as you know.

    If you have small running calculations you can run it in a webjob, or you can split your azure functions and use durable functions.

    You may need to check Azure Batch, the Azure service that is designed for calculations is https://azure.microsoft.com/en-us/services/batch/