“Java EE’s heavyweight label is just mythology”
Do you need more performance from your Java EE applications? Is latency causing you stress? If so, take a look at JCache, the Java caching API. We talked to JAX 2016 speaker Steve Millidge, the Founder and Director of Payara and C2B2 Consulting, about how to use CDI annotations in your Java EE applications, when to use which annotations, and what is automagically happening under the covers.
In this interview, Steve Millidge, the Founder and Director of Payara and C2B2 Consulting and speaker at JAX 2016, is telling us exactly how heavyweight Java EE really is and explaining the repercussions and solutions.
JAXenter: Many people don’t use Java EE because they think it’s heavyweight. Is this really the case?
Steve Millidge: Absolutely not! The latest servers from most of the Java EE vendors have been re-architected to be very light-weight on resources including memory, cpu and disc footprint. We recently did some testing of microservices implementations and many of those come in at under 50MB of RAM to run JavaEE based microservices. Also installation and configuration has been streamlined, for example many of the microservices versions of the products require no installation. I think the heavyweight label is just mythology going back to early 2000 and propagated by people who haven’t used Java EE since then.
JAXenter: What are the repercussions of this misconception?
Steve Millidge: The main issue with this myth is that some Java EE developers will feel that they need to learn new skills to develop microservice-based or cloud native architectures. This is absolutely not the case. Java EE developers can build microservices in Java EE and run them on small footprint application servers using the skills they currently have. This is the key message.
JAXenter: What can we do about it?
Steve Millidge: What the Java EE community needs to do is educate developers about what is possible with Java EE now. We need to promote the many advantages Java EE has over other frameworks in that as all the apis and framework are provided by the Java EE runtime, developers can concentrate purely on developing their applications and services. Java EE deployment artifacts are incredibly small and often need no other 3rd party dependencies simplifying packaging.
Java EE developers can build microservices in Java EE and run them on small footprint application servers using the skills they currently have.
JAXenter: During JAX Finance and JAX DevOps, Payara’s Mike Croft talked about three Java EE microservice platforms: Spring Boot, WildFly Swarm and Payara Micro. Why Payara Micro? What are its main assets and why should people choose it to the detriment of the other two?
Steve Millidge: Payara Micro is our version of Payara Server designed specifically to have a small footprint and to be designed around microservice and containerized architectures. The JAX Finance talk demonstrated that REST services, running on Payara Micro, or WildFly Swarm are just as small and fast as services built with SpringBoot. Meaning JavaEE developers can build microservices without the need to learn a new development framework. The key advantage of Payara Micro is that it can take a standard WAR file and run it on the command line using java -jar payara-micro.jar –deploy services.war in a very small footprint. There’s no need to assemble an application server from a set of parts, just use your favorite IDE to create a war and run it, deploy it, cluster it very simply. At the JAX conference in Mainz we showed this running fully clustered on a pair of Raspberry Pis.
More info on Payara Micro can be found here.
Thank you very much!