ログイン / 登録 アカウント

Javaは、過去25年にわたって企業向けソフトウェア・アプリケーション開発の主要な手段となっています。この年月の間には、アプリケーション・インフラストラクチャのテクノロジーにいくつかの急激な変化も生じており、それらは必ずしもJavaフレームワークとの互換性を備えているわけではありません。この変化はモノリシックなアプリケーション・サーバーからAPI主導型のプログラム可能なインフラストラクチャ、ジャストインタイムのインテリジェントなサーバーレス・インフラストラクチャまで、幅広い分野に及んでいます。私たちは、ピーク・ワークロードに対応した広範なセットアップおよび動的設定を提供するだけでなく、アプリケーション用に最適な運用モデルをコードとして表現してきました。今ではサーバーレス・コンピューティングによって、開発者はインフラストラクチャの問題を考えることなくアプリケーション・コードの提供に専念し、インテリジェントなアプリケーション・インフラストラクチャを稼働させ、スケールアップ/スケールダウンさせて使用することができます。

最新のアプリケーション・インフラストラクチャは、ますますイミュータブルになりつつあります。つまり、サーバーはデプロイされた後には変更を加えることができません。イミュータブル・インフラストラクチャは運用の簡素化に役立ち、よりシンプルで予測可能な、一貫性のあるデプロイプロセスを実現することができます。変更が必要になれば、従来の設定を新しい設定で置き換えることが可能で、開発、テスト、稼働の各段階にわたって一貫性のある容易に再現可能な環境を維持することができます。しかし、従来のJavaフレームワークは、最新のクラウド環境ではすでに不要となった、変更可能なアプリケーション・インフラストラクチャ向けに設計されています。

JavaのアップデートとQuarkusの利点

インフラストラクチャの進歩は、Javaプログラミング言語にどのような関係があるのでしょうか。私たちは業界として、新しいアプリケーション・インフラストラクチャ環境とアプリケーション・アーキテクチャー上で最新のアプリケーションを開発およびデプロイするために、どうすればJavaを最適に利用できるかを再検討する必要があります。開発者からIT管理者や経営陣までを対象として実施された2020年のEclipse Foundation Jakarta EEデベロッパー調査によると、Quarkusは最も急速に成長しているJavaプロジェクトの1つです。この調査では、「2019年初めの発表以来、Red HatのQuarkusの導入は急増しており、現在、開発者の16%がこのフレームワークを使用している」ことが明らかになっています。

Quarkusは、Java開発者の生産性を高め、彼らが持つJavaの経験をマイクロサービスやファンクションのような最新のアプリケーション・アーキテクチャーに適用する上で有効です。KubernetesネイティブなJavaへの移行を促進するため、Red Hatは調査会社のIDCと協力してラボ検証レポートを発行しました1。このレポートでは、コンテナ、Kubernetes、クラウドデプロイ、および開発者の効率にとって重要ないくつかの基準に基づいて、Quarkusと、広く使用されているクラウドネイティブなJavaフレームワークを比較しています。このレポートでは、広く使用されている他のJavaフレームワークと比べて、Quarkusが開発者の生産性を向上させることを検証しています。これはQuarkusの重要な利点の1つです。開発者の生産性が向上すれば、製品開発期間の短縮とイノベーションの促進につながり、優れたユーザー体験と新しい革新的なソリューションを顧客に提供することによって組織の競争力を維持することができるのです。

Quarkusがもたらすビジネスインパクト

Vodafone Greeceは、Spring BootをQuarkusで置き換えました。Quarkusが優れた新しいプロジェクトであるばかりでなく、調査を通じて実際のビジネスインパクトが明らかになったためです。例えば、各開発サイクルは、開発対象のロジックの複雑さに応じて1~2スプリント(1スプリントは2週間)で構成されます。Vodafone Greeceの技術主任、Christos Sotiriou氏によると、Quarkusを導入したところ、「開発者の生産性がSpring Bootに比べて30~40%向上しました。これはSpring Bootを使用していた開発者の場合です」。

同様に、LogicMonitorの主任開発者、Sam Dacanay氏はブログ記事を公表し、Quarkusが使用するCPU能力は以前のSpring/Tomcatソリューションの約15%であることを強調しています。その結果、LogicMonitorでは、KubernetesにおけるPOCアプリケーションのリソース要求/限度の1つ(LogicMonitorのインフラストラクチャのKubernetesワーカーノード全体で約200コア相当)をスケールダウンすることができました。Quarkusではメモリーの使用率が約12%にとどまるため、この面でもスケールダウンが可能です。その結果、このアプリケーションだけで、メモリーをインフラストラクチャ全体で約500GB削減することができました。起動時間は15秒から平均2秒に短縮され、以前と比べて85%高速化しました。この起動時間の短縮は、開発者の生産性と稼働時の運用効率の両面に極めて大きな影響を与える可能性があります。

Quarkusは、このサーバーレス、マイクロサービス、コンテナ、Kubernetes、ファンクション、クラウドに基づく新しい世界でJavaを実行するための効果的なソリューションを提供します。なぜなら、Quarkusはこのような環境を念頭に置いて設計されているからです。Quarkusを使用することの主な利点としては、デプロイの高密度化によるクラウドリソースの利用率向上、開発者の生産性向上、負荷が増大する下でのアプリケーションのスループット向上、起動時間の短縮などが挙げられます。開発、テスト、高可用性など複数の環境が必要であることから見ても、開発者はQuarkusによって大幅な生産性向上とコスト節約を実現することができます。

さらに詳しい情報については、次の各ページをご覧ください。


About the author