This article is contributed. See the original author and article here.
A Deep Dive into Serverless Applications on Power Apps and Azure
In 2021, each month we will be releasing a monthly blog covering the webinar of the month for the Low-code application development (LCAD) on Azure solution. LCAD on Azure is a new solution to demonstrate the robust development capabilities of integrating low-code Microsoft Power Apps and the Azure products you may be familiar with.
This month’s webinar is ‘A Deep Dive into Serverless Applications on Power Apps and Azure’ In this blog I will briefly recap Low-code application development on Azure, provide an overview of serverless, why to build a serverless Power App, and what to look forward to in the webinar’s demos.
What is Low-code application development on Azure?
Low-code application development (LCAD) on Azure was created to help developers build business applications faster with less code, leveraging the Power Platform, and more specifically Power Apps, yet helping them scale and extend their Power Apps with Azure services.
For example, a pro developer who works for a manufacturing company would need to build a line-of-business (LOB) application to help warehouse employees’ track incoming inventory. That application would take months to build, test, and deploy, however with Power Apps’ it can take hours to build, saving time and resources.
However, say the warehouse employees want the application to place procurement orders for additional inventory automatically when current inventory hits a determined low. In the past that would require another heavy lift by the development team to rework their previous application iteration. Due to the integration of Power Apps and Azure a professional developer can build an API in Visual Studio (VS) Code, publish it to their Azure portal, and export the API to Power Apps integrating it into their application as a custom connector. Afterwards, that same API is re-usable indefinitely in the Power Apps’ studio, for future use with other applications, saving the company and developers more time and resources.
You may be wondering what a serverless application is? Serverless is a cloud computing execution model where the cloud provider dynamically manages the allocation and provisioning of servers. A serverless application runs in stateless compute containers that are event-triggered, ephemeral, and fully managed by the cloud provider. In turn this model greatly benefits the developer and team by reducing their workload by reducing the need to manage servers, and this model is much cheaper because teams don’t incur the hardware and associated costs.
A logical next question is “in what scenario(s) do I go serverless?” You can choose it when you have asynchronous and concurrent tasks to be executed, when you have infrequent requests and spiky traffic where you don’t have a dependency on latency. Also, when you’re looking to quickly iterate your development, build MVPs, change your code or change business requirements to immediately deploy that code.
You’re now convinced of serverless code’s benefits, but how do you get started? At the core are cloud functions that enable you to write code in containers. In reaction to an event execution can be triggered by any of the managed services or any custom sources you might be defining that are important for your application. Due to durable functions you can write stateful functions in a serverless compute environment. Lastly, serverless code is event driven, running in response to specific triggers which can be a HTTP or a blob trigger when running code in response to a file being uploaded to a storage account number.
Serverless Power Apps
Building serverless applications on Azure sound great by themself, why would you bother to build your using Microsoft Power Apps? Building business applications quickly is not easy when utilizing several different frameworks, hosting options, and complex integrations between systems. Leveraging serverless technologies (Azure Functions and Logic Apps) can provide the building blocks for APIs to connect to custom backends, services, or a Data Model (Dataverse) that stores data across many applications. Leverage these APIs to deeply integrate with PowerApps or Power Automate and extend the data that is most critical to business users with apps that are quickly built, managed, and distributed. Moreover, with the development of ‘Fusion Development’ teams a term coined by analysts, developers can build back-end serverless APIs and import them via Azure API management directly into Microsoft Power Apps as custom connectors. ‘Citizen Developers’ or those who aren’t professional developers, can leverage these APIs in their Power App, reducing the overall work of the developer, by not having to build front-end code. Thus, piling on the time and resources saved by building serverless applications.
What to expect in the webinar?
Simona will cover first build a web API that generates jokes, throughout this process she will test and debug her APIs. Afterward publishing the API to which is available to test at aka.ms/joke which generates jokes using random words. Lastly, she exports the API to Power Apps via the Azure portal and challenges the viewers to extend her app with Power Automate AI chatbots that send jokes as text messages.
Make sure to tune into the webinar on February 25th to learn more about serverless APIs and how to export them into your Power Apps. Moreover, there will be a Low-code application development on Azure ‘Learn Live’ session during Ignite, the data loss prevention and new governance policies for Power Apps at Ignite, and an SAP on Azure Power Apps webinar in March.
Low Code Application Development on Azure
Power Apps x Azure documentation
Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.