Oracle EMEA Partner Sales

July 2018

 
 
 
  Your Monthly PaaS Updates  
 
 
Oracle WebLogic Community
 
  Oracle Developer Partner Community Newsletter
July 2018

 
 

Serverless Native Java Functions using GraalVM and Fn Project by Leonardo Zanivan


Myapp Service

GraalVM: a game changer for Java and Serverless?

TL;DR;

  • Java Functions compiled into a native executable using GraalVM reduces cold start times and memory footprint by order of magnitude compared to running on JVM.
  • Native Java Functions performs equal to or better than Go functions in terms of execution time and memory used.
  • Native Java Functions executable runs from scratch base image, thus have a similar size compared to Go executable images.
Source code is available at https://github.com/panga/fn-native-java

panga/fn-native-java
fn-native-java - Fn Project Native Java Function using GraalVMgithub.com

What's GraalVM?

GraalVM is a High-performance polyglot VM open sourced by Oracle and currently in active development.

It also has the ability to compile JVM languages and a few other languages like JS, Python, Ruby and R into native executable. Some examples are demonstrated in @graalvm blog.

The executable actually runs in a optimized native VM called "SubstrateVM". Although is quite stable nowadays, it still contains some limitations that are currently being worked on and can be released in near future.

What's Fn Project?

The Fn Project is an open-source container-native serverless platform that you can run anywhere — any cloud or on-premise. It’s easy to use, supports every programming language, and is extensible and performant.

It is an evolution of the IronFunctions project from iron.io and is mainly maintained by Oracle. So you can expect enterprise grade solution, like first class support for building and testing.

It basically leverages of the container technology to run and you can get started very quickly, the only prerequisite is Docker installed. Read the complete article here.

Back to top