QUARKUS は JVM 起動でも高速

目次

概要

Java のフレームワークの一つに quarkus というものがあります。Java のフレームワークといえば SpringBoot が浮かぶと思いますが、こちらも負けず劣らずのフレームワークなのではないかと思っています!

Quarkus といえば、Native Image での起動をすることで高速に起動することが有名で、それが利点でもあったりするのですが、実は JVM 起動でも高速です!というお話を今回していきます!

仕組み

SpringBoot との比較で説明することになりますが、結論からいうと、DI(Dependency Injection) の解決のタイミングが異なります。そのことが理由で、Quarkus は起動は早いのです!

端的に言うと、上図のような違いがあります。

従来は、起動時に Bean アノテーションのスキャンと各クラスの Inject のスキャンと依存性の解決を行っています。

ここが、時間がかかってしまう原因で

Quarkus では、これらの処理はビルド時に行います。

なので、 Quarkus の起動は JVM でも高速だといえます!!

実際に Spring Boot と Quarkus で同じ API を作って起動時の時間を図ってみても良いかもしれませんが、同じものを作るのもちょっと大変なので、取り合えす、理論上高速であるといっておきます!

でも、現在 Spring Boot と Quarkus の両方を使ってみているのですが、たしかに Quarkus の起動が早いなぁと感じますね。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

新卒4年目です。spring boot, jquery, vue を使ってフロントエンド開発、quarkus、azure kubernetesを使ってバックエンドを作ってました。 今は、UXデザイナーを目指して勉強中です! よろしくお願いします。

コメント

コメントする

CAPTCHA


目次