The market of cloud computing constantly grows and Microsoft Azure seems to rise step by step to become the biggest player in this business. It is already recognized as one of the leaders – and it shouldn’t be surprising at all since the scope, functionality, availability, and the refinement level of these services convince not only cloud developers but also the biggest global companies. Azure offers many services and products that reply to various and constantly ascending clients’ requirements. We can find hundreds of services dedicated to specific necessities whether it’s for data storage, cost analysis, or building data transfer algorithms – these are commonly used by cloud developers in their everyday work. One of the most universal ones and essential at the same time are Azure Functions and Azure Logic Apps.
Azure Functions may serve as an example of the realization of the serverless idea in a cloud environment putting priority on simplification or, rather, on the elimination of infrastructure problems and dynamic cost adjustment depending on the resources used. Henceforth, to execute a piece of code no more we need hours spent on hardware configuration and software installation. All of it happens in the cloud, in a specially prepared for this purpose service that is able to scale according to the current demand on computing power. Writing the code and booting it from the browser is an invaluable convenience in many situations.
The functions that we include in our service can be easily developed and are subject to continuous integration/continuous delivery. Working with Azure Functions is not limited to the Azure Portal because it can also be run on your own infrastructure (on-premise), from the code on your computer’s hard drive, and thus have the opportunity to debug e.g. thanks to add-ons such as Azure Functions Core Tools. Our project will then be run on the console application and we’re going to see all the logs there. Azure Functions has a reference to Application Insights built into the function header, so writing logs is child’s play. Accounting for the costs of these services has clear rules because you only pay for the resources used, or actually – for the amount of data transferred in the functions.
A special project type for Azure Functions is included in Visual Studio. In the 2019 version, we can easily create a sample empty project and play as a cloud developer by creating a local API and querying for various resources in the browser. In Visual Studio 2017 we need to install a special add-on – Azure Functions and Web Job Tools. We already have it as standard in the 2019 version. It is very easy to migrate your finished functions from an on-premises environment to the cloud and simple publishing is the only activity needed. In its operation, Azure Functions follows the paradigm of event-driven programming. Here, too, all action begins with the so-called triggers that can come from various sources: timer, HTTP request, change in the blob database, etc.
In its concept, Azure Functions is a service that saves a lot of time thanks to the lack of the need to configure infrastructure and software, facilitates integration with other services, and its participation in building complex algorithms (which will be discussed further in a moment).
Azure Logic Apps is an indispensable tool for creating complex data flow algorithms and integration with other services from Microsoft’s offer. In order to meet more demanding projects, it is also possible to send the output data to external websites or download them from there. For developers, this service is their go-to when they need to plan, automate or prepare a proof of concept of an extensive task representing a certain business logic.
In Azure Logic Apps we create a flow with the use of a visual wizard which is to create a diagram similar to a standard algorithm that we know from i.e. computer science lessons in school. Like Azure Functions, a procedure starts with one of a number of triggers (most often an HTTP request). The variety of subsequent stages provides a large number of the so-called connectors, among which we can find i.e. data from applications such as Twitter or Facebook, and which may be performed conditionally or in a loop – we can apply here all the standard flowchart’s actions. Logic Apps is a convenient service that allows you to visualize certain ideas and, using a small amount of time, create a fully functional algorithm that makes logical decisions and operations, and also connects data from many sources. It is not required to install libraries to support websites or even write code.
An example of a practical application would be an algorithm to observe and process Twitter messages and then send notifications in Microsoft Teams.
A dedicated trigger will frequently check whether there is a new message with a given content or with a certain hashtag on the aforementioned social networking site. In the event of an occurrence, this content will be processed by another service, namely “Text Analytics” which will determine the emotional charge of the entry. (That’s right, Azure offers this functionality.) Called “Detect Sentiment”, it is performed by AI and is often used to classify customer feedback as positive or negative. The numerical score the tweet receives will decide the details of the further scenario in the conditional statement. If the reception is positive, we’ll send a message about good feedback thanks to the Microsoft Teams connector, and if the rating is below a certain value, we will regret to inform other messenger users that this Twitter comment was unfavorable for us. As it can be seen, Azure Logic Apps can visualize and quickly implement scenarios from business logic or just our imagination.
Azure Logic Apps and Azure Functions services are flagship tools of Microsoft cloud and are also exquisite examples of simplicity and intuitiveness in practice being wrapped in functionality. After long exposure to this environment, you can easily conclude that they were probably one of the main ideas on the list of design assumptions of the product which are Microsoft Azure cloud services.
P.S. Here’s some more to read on the subject:
- From Finance Yahoo
- From Holori.com
- By Natasha Spurr (Microsoft Dynamics Alliances Executive at ANS Group) on Linkedin
- From Server Consultancy
Software Engineer in Rite NRG
In love with .NET from first sight and first line of code written. Interested in cloud services and solutions. Started my commercial career by writing and maintaining an internal system for managing a small company. An electronics engineer by profession.
Privately, I’m a future husband of beautiful Agata, avid music enjoyer-listener, Formula 1 fan, and perfumes lover. I like also any sports activities especially running, swimming and cycling. I think I’m a good housekeeper.