Peter Nagy and I presented a paper at the Oracle Groundbreakers Tour 2020 LATAM in August, 2020 titled “Go Java, Go!” where we asked ourselves the question “can Java microservices be as fast as Go?” We created some microservices and did some benchmarking, and we presented our results at that event. But there was more to explore, so we decided to turn our presentation into this post. We plan to follow up with additional posts as we do more testing and development.
We wanted to experiment to see if Java microservices could run as fast as Go microservices. Common industry belief seems to be that Java is “old,” “slow” and “boring;” and that Go is “fast,” “new” and “cool.” But we wanted to know if those characterizations were warranted or supported by actual performance data.
We wanted a fair test, so we created a very simple microservice with no external dependencies (like a database for example), and with very short code paths (just manipulating strings). We did include metrics and logging, since these seem to be always included in any real microservice. We used small, lightweight frameworks (Helidon for Java and Go-Kit for Go) and we also experimented with pure JAX-RS for Java. We experimented with different versions of Java and different JVMs. We did some basic tuning of the heap size and garbage collector. We warmed up the microservices before test runs. Read the complete article here.
For regular information become a member in the Developer Partner Community please register here.