This article takes a look at the four largest cloud vendors and compares them based on services, prices, languages and more, and offers some alternatives.
— Read on dzone.com/articles/comparing-serverless-architecture-providers-aws-az
Earlier today, Service Fabric Mesh was made available to everyone as a public preview. At Build 2018, Microsoft announced and demonstrated Service Fabric Mesh, a serverless offering of Azure Service Fabric. The public preview is available in three Azure regions: US West, US East, and Europe West and the availability will expand to other regions in the coming months.
Azure Service Fabric Mesh, a fully-managed service that enables developers to deploy and operate containerized applications without having to manage VMs, storage or networking configuration, while keeping the enterprise-grade reliability, scalability, and mission-critical performance of Service Fabric. Service Fabric Mesh supports both Windows and Linux containers, so you can develop with the programming language and framework of your choice.
You can get started today by heading over to the Azure Service Fabric Mesh documentation.
Be sure to take a look at the Azure Service Fabric Mesh Public Preview Announcement for frequently asked questions (FAQ) on what’s supported, and limitations. Since this is only a public preview, there is no SLA for production use.
Azure Service Fabric Mesh Public Preview Announcement
Azure Service Fabric Mesh tools now available for Visual Studio 2017
Azure Friday – Azure Service Fabric Mesh Preview
Azure Service Fabric Mesh documentation
Azure Service Fabric Mesh samples
Azure Service Fabric Mesh pricing
Azure Service Fabric Mesh Container Quick Start
Azure Functions now have 2 different runtimes, version 1 which is what is currently in production and the only runtime supported for production use, and version 2 which is currently in preview. I’ll cover the difference in both runtimes and when to use which version.
Overview or Version 1
What’s New in Version 2
Version 2 runtime has been rebuilt from the ground up on .NET Core 2.0 and support cross platform (Windows and Linux) for deployment and for development you can use Windows, Linux, and macOS.
Azure Functions is a great serverless offering and provides lots of functionality for almost any application. If you need to run code in production than version 1 is your only choice, but if you want to try out Azure Functions then definitely take a look at both runtimes. With Microsoft annual developer conference Build next month, I bet we will hear more information about version 2 runtime and a timeline for release.
Azure Functions runtime versions overview
Install Azure Functions Core Tools
Azure Functions Roadmap
Durable Functions is a new extension of Azure Functions which manages state, checkpoints and restarts for you. Durable Functions provide the capability to code stateful functions in a serverless environment. This new extension enables a new type of function called an orchestrator. The primary use case for Durable Functions is to simplify complex, stateful coordination problems in serverless applications. Some advantages of an orchestrator function are:
- Workflows are defined in code. This means no JSON schemas or designers are needed.
- Other functions can be called synchronously or asynchronously. Output from functions can be saved to local variables.
- Automatic checkpoint the progress of the function whenever it awaits. This means local state is never lost if the process recycles or the VM reboots.
The following are 5 sample patterns where Durable Functions can help.
Pattern #1: Function Chaining
Function chaining is the execution of functions in sequence where the output of one function is the input to another function. With this pattern you typically use queues to pass state from function to function.
Pattern #2: Fan-out/Fan-in
Fan-out/Fan-in refers to the execution of multiple functions in parallel and then waiting for all of them to finish. This pattern also uses queues to manage state from start to end. Fanning back in is much more complicated as you would have to track the outputs of all the functions waiting for them to finish.
Pattern #3: Async HTTP APIs
Async HTTP APIs pattern is all about the problem of coordinating the state of long running operations with external APIs. With this pattern you often use another status endpoint for the client to check on the status of the long running operation.
Pattern #4: Monitoring
The Monitoring pattern is a recurring process in a workflow where the function polls for a certain condition to be met. A simple timer trigger could address this but its interval is static and management of it is more complex.
Pattern #5: Human Interaction
Finally we have the Human Interaction pattern. This pattern is where a function executes but its process is gated based on some sort of human interaction. People are not always available or respond in a timely manner which introduces complexity to your function process.
In all five use cases, Durable Functions provides built-in support for easily handling these scenarios without the need extra resources likes queues, timers, etc for managing state and controlling the function flow. For more information on each of these patterns and code samples please see the Durable Functions documentation.
Durable Functions is currently in preview and is an advanced extension for Azure Functions that is not appropriate for all scenarios. Next month is the annual Microsoft developer conference Build. I suspect we’ll see some new exciting details with Azure Functions and Durable Functions specifically. Hopefully they become generally available.
Overview of Azure Functions
Durable Functions Documentation
The latest in compute, serverless and more – hosted by the Azure Advocates.
This is a a FREE event where you’ll learn about compute, serverless, storage, big data, artificial intelligence, machine learning and so much more…plus lunch is included (every developer loves a free lunch).
Toronto, On – April 3, 2018
Vancouver, BC – April 5, 2018
Washington, D.C. – April 6, 2018
Los Angeles, CA – April 9, 2018
Austin, TX – April 10, 2018
San Francisco, CA – April 12, 2018
Seattle, WA – April 12, 2018
In addition there will be University Tours for students and faculty.
Register at a city near you to learn how to build great cloud apps!
If you’re new to Azure Functions and/or Logic Apps there is a great open source library for you to browse that contains set of common use cases that are ready to deploy!
If you want to create an Azure Resource Manager (ARM) template that deploys Functions or Logic Apps, you can build your own as shown here. Just provide your GitHub repository URL and it will quickly create an azure.deploy.json file for you to include with your repos.
These samples are available in a either C# or NodeJS and can be deployed to your Azure subscription with a click of a button. The samples cover a number of useful tasks that can easily be incorporated into your application or simply used for learning purposes. If you’re interested in contributing to this project or browsing through the code please take a look at the GitHub repository.
In my previous post “Introduction to Azure serverless with Azure Functions, Logic Apps and Azure Event Grid” I briefly introduced each of those services from Azure. In this post I’ll show you how you can try Azure Functions for free without signing up for an Azure subscription. Let’s get started.
Microsoft has setup a free sandbox environment for trying out Azure Functions for free. Navigate to the free trial link and select the function you want to create:
After clicking on the Create this function button you will be asked to choose an auth provider. Any will do and it’s just needed to get some basic information for the trial. No credit card information is required:
After a few seconds you should see your new HttpTrigger C# function (based on the selection from the previous screen). Click on the Run button to see your function run. From this portal you can edit your function code and save the changes, run the function and view the logs from the, test your function with different input, and see the output and status.
Your function also has a URL you can use to run your function outside of this portal. Go to the top right corner and click on Get function URL:
You will then see the get function URL modal with the key and URL. Click on the copy link and then open up another browser tab or use it within Postman:
Paste your function link and then add the required query string parameter Name with a value. You should then see the output of your function like so:
This environment is limited in what you can do. So although you can change your function code and the integrations it works with, you are prevented from managing your function app. You also only have only 59 minutes to try it out.
As you can see you can quickly try out Azure Functions in a sandbox environment. If and when you’re ready you can move to an Azure subscription where you can fully manage your Azure Function and get access to a world of other resources to use with your function app. It’s worth mentioning that with your Azure subscription you get access to a number of Azure resources for free within certain limits…including Azure Functions. So take a look and give Azure Functions a try.
Try Azure Functions for Free