What are Azure Functions?
Azure Functions are the event-driven, serverless, Function as a Service
(FaaS) offer from Microsoft on the Azure cloud.
Function as a Service means that we develop and deploy each function
individually. It is a next step in splitting the big monolithic application
into microservices and then into functions. Into smaller pieces to get more
control over each element.
Serverless means that we don’t have to worry about maintaining
infrastructure and platform for execution of those function components. We
can focus our efforts on creating pure business value. And the
infrastructure and the execution of code is handled by Azure.
Event-driven means that each execution is triggered by some business
event that happened in the system. And Azure makes sure that our functions
are executed with the event data.
Pros:
- better time and cost control over each business case
- smaller costs of development
- faster Time To Market (especially for new features)
- more resilient systems
Cons:
- new approach of creating software
- new, different hosting and pricing models
- more complex observability
This all gives us the perfect service to build resilient,
asynchronous systems in the Event Driven Architecture model.
Paweł