Serverless functions architecture design
Serverless architecture evolves cloud platforms toward pure cloud-native code by abstracting code from the infrastructure that it needs to run. Azure Functions is a serverless compute option that supports functions, small pieces of code that do single things.
Benefits of using serverless architectures with Functions applications include:
- The Azure infrastructure automatically provides all the updated servers that applications need to keep running at scale.
- Compute resources allocate dynamically, and instantly autoscale to meet elastic demands. Serverless doesn't mean "no server," but "less server," because servers run only as needed.
- Micro-billing saves costs by charging only for the compute resources and duration the code uses to execute.
- Function bindings streamline integration by providing declarative access to a wide variety of Azure and third-party services.
Functions are event-driven. An external event like an HTTP web request, message, schedule, or change in data triggers the function code. A Functions application doesn't code the trigger, only the response to the trigger. With a lower barrier to entry, developers can focus on business logic, rather than writing code to handle infrastructure concerns like messaging.
Azure Functions is a managed service in Azure and Azure Stack. The open source Functions runtime works in many environments, including Kubernetes, Azure IoT Edge, on-premises, and other clouds.
Serverless and Functions require new ways of thinking and new approaches to building applications. They aren't the right solutions for every problem. For example serverless Functions scenarios, see Reference architectures.
Implementation steps
Successful implementation of serverless technologies with Azure Functions requires the following actions:
-
Architects and technical decision makers (TDMs) perform application assessment, conduct or attend technical workshops and trainings, run proof of concept (PoC) or pilot projects, and conduct architectural designs sessions as necessary.
-
Developers implement serverless Functions app development patterns and practices, configure DevOps pipelines, and employ site reliability engineering (SRE) best practices.
-
IT professionals identify hosting configurations, future-proof scalability by automating infrastructure provisioning, and maintain availability by planning for business continuity and disaster recovery.
-
Security professionals handle Azure Functions security essentials, secure the hosting setup, and provide application security guidance.
Related resources
- To learn more about serverless technology, see the Azure serverless documentation.
- To learn more about Azure Functions, see the Azure Functions documentation.
- For help with choosing a compute technology, see Choose an Azure compute service for your application.
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for