DEV Community

Discussion on: An Introduction to Quarkus

Collapse
absinthetized profile image
Matteo Nunziati

Nice! 2 cents: graalVM compiled is not java anymore. It is the same as golang: a compiled code with a management runtime. You have to compare it with go, rust not with java. IMHO.
I perfectly understand the case for native images, but comparisons with plain java is oranges and apples.
I ignored payara micro. I've spent some time with micronaut and honestly , while I wait for quarkus, micronaut hotreload and hackability are way superior to me now (testing with kotlin: no plain java is a must to me). Quarkus hotreload constantly chrashes with kotlin for me.
Do uou intentionally skip micronaut gor any reason?! Also: I have to give payara a try!

Collapse
habereder profile image
Raphael Habereder Author • Edited on

graalVM compiled is not java anymore. It is the same as golang: a compiled code with a management runtime. You have to compare it with go, rust not with java.

While that is certainly true, the comparison, as unfair as it is, resulted from the fact that most of our microservices were implemented in some kind of JVM framework. Naturally, we were interested in the performance-claims by just "changing the runtime/build".
Rewriting the services in a new language was proposed, but ultimately unanimously dropped, because we rely heavily on EE-Frameworks.
It would have been much more work than just switching the runtime to quarkus.

We have quite a wide range of implementations:

  • Microprofile with Payara Micro
  • Payara Full
  • Spring Boot
  • Thorntail

Pretty much each team worked with the framework they felt comfortable with, when building their services.

Quarkus hotreload constantly chrashes with kotlin for me.

That is interesting. I haven't tried the hotreload extensively yet, since a complete maven-build works pretty fast and gives me a chance to grab a new cup of coffee. I'll take a look at that!

Do uou intentionally skip micronaut gor any reason?!

To be honest, I haven't heard of micronaut before, but at first glance it looks pretty cool! I'll be sure to check it out.

Collapse
absinthetized profile image
Matteo Nunziati

While that is certainly true, the comparison, as unfair as it is, resulted from the fact that most of our microservices were implemented in some kind of JVM framework. Naturally, we were interested in the performance-claims by just "changing the runtime/build".
Rewriting the services in a new language was proposed, but ultimately unanimously dropped, because we rely heavily on EE-Frameworks.
It would have been much more work than just switching the runtime to quarkus.

Yes, this is why I understand the case for compiled java code too. I agree: brownfield always has backward compatibility as a top requirement.