If you are an Azure Veteran … what was the first thing you have created in Azure? If you are new to Azure, what are you looking for to create? In many cases the answer is: Virtual Machines An even if you are one of the fancy-new-world-everything-paas-and-serverless gurus … we must be honest and say:…
Did you know that many of the services and tools you are using in Azure, are actually under open-source. As an example we want to have a look at Azure Functions today, to follow up in our OSS category
What are Azure Functions?!
I do not want to go to deep today … but lets get a quick insight on what Azure Functions are actually built for!
Functions are an event driven extension of the Azure application platform. It works in a “serverless” configuration, so this means you will get compute on demand. In the end you application code is run based on an event that is triggering the action. You can connect several inputs to your function. The outputs of your function can then be forwarded to different connectors.
In the end this leads to an application code that is focusing on execution of code, which easily can be integrated with other sources, outside of the code.
The most interesting thing is that Azure Functions are not only available in Azure. You can also run them on-premises or on any other cloud. You can also use triggers from every system, no matter if it is on-prem or in the cloud.
If you want to learn more about Azure functions and what you can do with them: Have a look into MS Docs
What is open sourced?!
But what has this to do with Open Source now. So, let me quote the announcement from 2016:
The Functions runtime, templates, UI and underlying WebJobs SDK are all open source projects being developed publically. The underlying runtime will be portable so you can run Functions anywhere – on Azure, in your datacenter or other clouds.
Currently all development on Azure Functions can be found on GitHub. There are several sub-pages for the components of Azure Functions:
- Azure Functions Host – the Azure Functions runtime/host
- Azure WebJobs SDK – the “core” of the Azure Functions runtime and many bindings
- Azure WebJobs SDK extensions – the repositories of many bindings
- Durable Functions – the Durable Functions binding extension
- Azure Functions Core Tools – the command line tool for Azure Functions
- Azure Functions Java Worker – support for running Java functions
- Azure Functions Python Worker – support for running Python functions
- Azure Functions UX – the UX for the Functions development portal
- Azure Functions templates – the templates which show up in the Azure Functions portal, Visual Studio, Visual Studio Code, etc
- Azure Functions samples – repository for some samples on how the runtime works
- Azure Functions VS Tooling – msbuild tasks for precompiled functions
Why is it open-source?!
I think there are multiple reasons to open-source a solution like Azure Functions. When you have a look above on the number of components involved, you need a way to quickly resolve issues. With an open-source project you have more people looking into issues, proposing changes, etc.
Also the idea of having Azure Functions on multiple platforms, either on-prem or in the cloud, is a plus for Open-Source. As with this everybody can adopt it as required. You can implement it as a big vendor into your platform, but you can also play around in your lab as a smaller size customer.
The consistency of experience, re usability of code, etc. is a plus too.
So feel free to get involved into this project on GitHub…
Dieser Post ist auch verfügbar auf: German