This article is more than 1 year old

Microsoft's Azure servers want to sip your mug of serverless Java

Azure Functions upgraded to woo developers speaking Oracle's language

JavaOne Microsoft has announced Java support for Azure Functions, the serverless cloud platform which competes with AWS Lambda. The announcement was made at the JavaOne event under way in San Francisco this week.

The service is now in public preview. Java is the latest language to be added following Microsoft’s redesign of the Azure Functions runtime to improve support for different programming languages.

Azure Functions can be triggered in a variety of ways, including a direct call over HTTP, scheduled execution, Azure Service Bus messages, changes to files in Azure storage, or in response to events managed by Event Grid, an Azure event routing service announced in August.

Azure Functions is billed per execution and scales automatically. Other supported languages are C#, F#, Node.js, Python, PHP and Bash.

Georges Saab at JavaOne '17

Oracle VP: 'We want the next decade to be Java first, Java always'


Microsoft also has tools for running an Azure Functions host locally, for development and test. The Azure Functions Core Tools use NodeJS and .NET Core, and run on Windows, Linux and Mac.

Java developers also have a plugin for Apache Maven which manages build and deployment.

Why Java in Azure Functions? Java remains the top language for enterprise development, even though it trails JavaScript in overall popularity. If Microsoft hopes to attract developers to Azure beyond the usual Redmond platform community, Java support is essential.

Note that Amazon's AWS has offered Java support in its similar Lambda service since June 2015. Lambda also has a local development option, called AWS SAM – that's Serverless Application Model – Local, so Microsoft’s offering is not all that distinctive.

That said, there is good reason to build on Microsoft’s cloud if you are integrating with other Microsoft services such as Office 365 or Dynamics 365, or an Azure database such as CosmosDB.

Microsoft already supports Java on Azure in various other services, including App Service, or running in containers. The advantage of serverless is that is a pure cloud model, in which developers only need to supply the code, which talks to the underlying platform via APIs. Obviously, it still ultimately all runs on actual servers. Serverless means you don't have to worry about deploying, maintaining, scheduling and tearing down host systems or virtual machines – you just supply the code and Azure (or AWS or whoever) takes care of the hosting automatically, fingers crossed.

More information is over here. ®

More about


Send us news

Other stories you might like