We will build a simple Q&A system that holds a number of common questions for users to consult. Add to that the fact that scaling concerns can be completely handed off to Microsoft, they will make sure your API always has enough resources available, and this makes for a very compelling use-case for doing away with the classic infrastructure and moving to Serverless Computing. Instead of running a dedicated always-on server to host the API, leveraging Azure Functions allows you to limit your spending to only cover the memory usage and execution time of your code. The developer only has to deliver his functions, indicate what environment he wants them to run in, and consume their output.īesides the added value Functions as a Service can provide in the development cycle, there's also a cost-benefit to them. The servers are still there of course, but they are essentially invisible to the developer. This allows teams to cycle faster in their delivery of value, putting the burden of infrastructure provisioning, management and scaling in the hands of the service providers. It's the top rung of the Iaas-PaaS-SaaS-FaaS ladder of compute and infrastructure, completely eliminating the need for infrastructure management, and allowing total focus on application code.
Serverless Computing (or Functions as a Service) is hot these days. With the arrival of public clouds these teams have gained a new tool for their toolbox, allowing them to focus on writing their code, and less on managing infrastructure. The teams essentially make the statement "This is our API, use it and we will make sure it's available to you at all times." This includes database design and operations, infrastructure management and monitoring.
Ever since the 2006 acmqueue interview with Werner Vogels, CTO of Amazon, where he uttered the phrase "You build it, you run it.", a movement has taken shape driving development teams to not only build and design their own API's, but to take end-to-end responsibility for them. In a typical 3-tier application it sits between the UI where end-users can consult and modify the data, and the database where the data is stored.įor Developer teams an API is often a gateway to the world.
A REST API is the frontend to a data source, it provides create, retrieve, update and delete access to the data items. Representational State Transfer (REST) API's are everywhere. If you like this article you might also enjoy our Azure Functions for DevOps Engineers course.