Voxxed Days Microservices: Micronaut
Voxxed Days Microservices: Micronaut
An open-source developer and software engineer talks about Micronaut for developing microservices.
Join the DZone community and get the full member experience.Join For Free
Containerized Microservices require new monitoring. Read the eBook that explores why a new APM approach is needed to even see containerized applications.
Hi Graeme, tell us who you are and what lead you into microservices.
I am the creator and maintainer of several popular open-source projects, including Grails, GORM, and Micronaut and I work for OCi as a principal software engineer.
My work has always been driven by user input and feedback from the Open Source community. As a professional Open Source developer, community is everything and recently Grails and Java communities have been crying out for better, more integrated solutions for developing truly Micro applications on the Java platform.
I believe strongly in using tools that are fit for purpose, hence just like 10 years ago when I created Grails to enable true rapid application development of server-side applications written largely in a monolithic approach, now I am focused on microservices with the creation of Micronaut.
What will you be talking about at Voxxed Days Microservices?
I will be introducing the 1.0 GA release of Micronaut and showing the audience what is capable of.
Micronaut is a new Java framework that takes the lessons learned over the years building Spring and Grails applications and resolves many of the inherent issues those frameworks have when it comes to building low-memory footprint microservices or applications that require efficient startup times (such as serverless functions that require a cold start).
I will be demonstrating how you can build microservice applications with Micronaut that consume significantly less memory and startup extremely fast, but still include all of the features from frameworks like Spring and Grails that developers have come to know and love.
In addition, I will be previewing how Micronaut applications can already be run as native images using GraalVM, Oracle's upcoming universal virtual machine, enabling even greater efficiency.
When we talk about microservices, we think of a set of patterns that we may use or not depending on our needs, but we don't think of a framework. Is Micronaut a microservices framework? Which microservices pattern does it implement?
Microservices today remind me a great deal of where Java EE was 10 years ago, where you had a whole bunch of technologies that you needed to piece together manually to become productive as a developer. Technologies like Grails and Spring solved that problem, but were not really designed with microservices in mind.
Micronaut is indeed a new framework that takes these existing established microservice patterns and includes out-of-the-box solutions for all of them, without you having to piece together different tools and frameworks to make it work. In that sense, it provides the same productivity boost that Grails did 10 years ago for monoliths, but for microservices today.
The 1.0 release of Micronaut already includes native support for retry, circuit breaker, service discovery, distributed configuration, client-side load balancing, JWT authentication, token propagation and more.
Apart from that although the name Micronaut strongly hints at it being designed for microservices, Micronaut can, in fact, be used for any kind of application, whether you are building a CLI application, a Kafka application or a serverless function, Micronaut has a compelling set of features to make you productive.
The reason for this is that Micronaut includes built-in compile-time Dependency Injection and Aspect Oriented Programming model that uses Ahead of Time (AOT) compilation via annotation processors (or AST transforms for Groovy) to enable many of the same features found in Spring or Grails, but without paying the heavy runtime cost in terms of memory consumption and startup time.
This approach also allows Micronaut to run more effectively on GraalVM, a new virtual machine from Oracle that allows you (using AOT compilation) to build your Java application into a native image that starts in milliseconds and consumes significantly less memory.
Good, see you soon, then.
Thanks and see you at Voxxed Microservices 2018!
Voxxed Days Microservices and DZone, Partnering Up
DZoners! Visit Voxxed Days Microservices here to check out ticket info for the show, and use the DZone reader exclusive code: VXDMS_DZONE to get 20% off for the conference and workshop. Grab those tickets while you can, be sure to say hey to our Zone Leaders—Thomas Jardinet and Chris Ward—if you run into them at the show, and enjoy Paris!
Published at DZone with permission of Antonio Goncalves , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.