次のプロジェクトでJavaを使用したいのですが、すべての新機能とテクノロジーを学ぶ時間がありません。 Javaがしばらく前から存在していることは周知の事実であり、すべての変更に対応するのは難しい場合があります。
あなたがそれを理解したと思うたびに、彼らは別のアップデートを追加したり、何か他のものを変更したりします。
Quarkusが解決策です!
これは、KubernetesでのJavaアプリケーションの開発を容易にするために設計されたRedHatの新しいオープンソースプロジェクトです。 Quarkusの一連のテクノロジーにより、GraalVMとHotSpotを使用してJavaアプリケーションを簡単に作成できます。
Quarkusを使用すると、ボイラープレートコードをほとんどまたはまったく使用せずに、軽量のマイクロサービスとリアクティブアプリケーションを開発できます。 さらに、Quarkusは任意のJavaランタイム環境(JRE)またはOpenJDK 8または11環境で実行されるため、クラウドでの使用に最適です。
Quarkus開発の開始について詳しくは、このチュートリアルをご覧ください。
Quarkusとは何ですか?
Quarkusは、ゼロ構成で最新のJavaアプリケーションを構築するためのオープンソースフレームワークです。 コンパイラを使用して、実行しているプラットフォームのネイティブコードを生成するため、コードを記述する以外に何もする必要はありません。
Quarkusプロジェクトは、最新のJavaアプリケーションを構築およびデプロイできるフレームワークを作成することを目的としたコミュニティ主導のイニシアチブです。 Quarkusは、SpringBootに代わる軽量のオープンソースと考えることができます。
Quarkusを使用して、クラウドにデプロイされたマイクロサービスとリアクティブアプリケーションを構築できます。
Quarkusの機能とは何ですか?
最新のJavaアプリケーションの構築とデプロイに役立つQuarkusの主な機能は次のとおりです。
1.コンテナファースト
GraalVMおよびHotSpotの場合、Quarkusは要件に合わせてアプリケーションをカスタマイズします。 非常に高速な起動時間と、非常に低いRSSメモリ使用量。
Kubernetesのようなコンテナオーケストレーションソリューションでは、ほぼ瞬時のスケールアップと高密度メモリの使用を可能にすることが不可欠です。 コンパイル時ブートと呼ばれる方法が使用されます。
コンテナが起動し、アプリケーションコードがメモリにロードされます。 アプリケーションの準備が整うと、コンテナは停止します。
Quarkusにはプラグインメカニズムもあり、アプリケーションに新しい機能を追加することでQuarkusを拡張できます。 たとえば、アプリケーションに新しい認証メカニズムを追加できます。
2.非常に簡単な展開
Quarkusを使用すると、Javaをサポートする任意のプラットフォームにアプリケーションをデプロイできます。 これには、Kubernetesなどのコンテナオーケストレーションソリューションや、Windows Server、Google App Engine、Herokuなどのプラットフォームが含まれます。
Quarkusを使用する場合、コードを記述したり、コードを記述する以外のことを行う必要はありません。 これにより、アプリケーションのデプロイと更新が非常に簡単になります。
3.命令型とリアクティブ型を統合します
Quarkusは、命令型アプリケーションと事後対応型アプリケーションの開発を統合するフレームワークです。 つまり、両方に同じツールセットを使用できます。
同じツールを使用して、コードを開発できます。 アプリの構築 データを処理するもの、またはデータベースと通信するもの。
これにより、リアクティブアプリケーションで命令型プログラミング手法を使用できます。 たとえば、JDBCおよびJPA APIを使用して、データベーステーブルおよびエンティティを使用するアプリケーションを作成できます。
4.フルスタック統合
Quarkusは、Spring、JPA、Hibernateなどの他のフレームワークやライブラリと連携するように設計されています。 これにより、より統合されたアプリケーションを構築できます。
たとえば、Hibernateフレームワークを使用してデータベーステーブルを管理できます。 これは、データベースの動作の詳細を学習しなくても、データベースと対話するコードを記述できることを意味します。
5.マイクロサービス、リアクティブ、および関数型プログラミング
Quarkusは、マイクロサービスとリアクティブアプリケーションの開発を可能にします。 これは、同じツールを使用して、機能的なアプリケーションとリアクティブなアプリケーションの両方を構築できることを意味します。
たとえば、HTTPを使用すると、Quarkusを使用して、他のマイクロサービスと通信するマイクロサービスを開発できます。
Quarkusを使用してリアクティブアプリケーションを開発することもできます。 これは、アプリケーションがデータベースやWebソケットからのイベントなどの非同期イベントを処理できることを意味します。
6.非常に効率的で高性能
Quarkusは非常に高速に動作するように設計されています。 また、コードのコンパイルにHotSpotまたはGraalVMを使用するため、非常に効率的です。
たとえば、 Quarkus は Spring Boot よりも最大 100 倍高速です Java EE よりも XNUMX 倍高速です。
Quarkusをどのように始められますか?
Quarkusの使用を開始するには、Quarkusフレームワークをインストールする必要があります。 これを行うには、JavaDevelopmentKitをインストールする必要があります。
JDKをインストールした後、Quarkusフレームワークをインストールする必要があります。 これを行うには、Maven、Gradle、またはCLIを使用できます。
Quarkusをインストールしたら、コードの記述を開始できます。 Quarkusフレームワークは、SpringやHibernateなどの他のフレームワークやライブラリと連携するように設計されています。 これは、両方に同じツールセットを使用できることを意味します。
Quarkusの他の選択肢はありますか?
多くのフレームワークを使用すると、Javaアプリケーションを開発できます。 そのような:
1.スプリングブーツ
Spring Bootは、Javaアプリケーションの開発を可能にするフレームワークです。 Springフレームワークで動作するように設計されています。 このプラットフォームにより、機能的なアプリケーションとリアクティブなアプリケーションの両方を作成できます。
Spring Bootは、アプリケーションの開発を容易にするように設計されています。 これは、アプリケーションを構築するために新しいツールを学ぶ必要がないことを意味します。
2.GraalVM
GraalVMは、Java用に高度に最適化されたコンパイラーになるように設計されています。 これは、非常に高速なアプリケーションを作成できることを意味します。 ただし、それらをコンパイルできる必要もあります。
GraalVMは、Javaアプリケーションをコンパイルできるプラットフォームです。 このプラットフォームは、GraalVMツールチェーンで動作するように設計されています。 このツールチェーンは、コードのパフォーマンスを最適化するように設計されています。
3.JAX-RS
JAX-RSは、RESTfulAPIを簡単に作成できるように設計されています。 JAX-RS仕様に基づいているWebAPIの数を知っていますか? SpringBootとSpringMVCはこの仕様を使用します。
他のフレームワークも使用します それ、のように ドロップウィザード。 に Webサービスユーザーとゲートウェイの作成と実装を容易にするJAX-RSは、このリリースで導入されたJavaSE5アノテーションを採用しています。
よくある質問
Quarkusは安定していますか?
はい、Quarkusは安定しています。 最新バージョンは1.0.1です。 公式サイトからダウンロードできます。 安定していますが、高度にカスタマイズ可能です。 これは、アプリケーションの構築に使用できることを意味します。
Quarkusアプリケーションの機能の大部分は、Spring、Hibernateなどのより広範なエコシステムで見つかる可能性があることを考慮してください。
Quarkusは無料ですか?
Quarkusは オープンソース。 これは、無料でダウンロードできることを意味します。 また、ソースコードを変更して再配布する権利もあります。
プロジェクトに貢献することもできます。 有料サポートサブスクリプションも含まれています。 このサブスクリプションは、製品ロードマップ、コミュニティ、およびトレーニングにアクセスするためのものです。
QuarkusとKotlinの違いは何ですか?
Quarkusは、リアクティブアプリケーションを構築するためのプラットフォームです。 これは、リアクティブプログラミングパラダイムで動作するように設計されていることを意味します。 このパラダイムは、イベント駆動型プログラミングモデルに似ています。
Kotlinは、アプリケーションの作成を容易にするために設計されたプログラミング言語です。 それは現代です プログラミング言語 Java構文を使用します。
私の意見
Javaアプリケーションを開発するための新しい方法を探しているなら、Quarkusは試してみる価値があります。 Javaプログラミング言語を使用して、開発者としてコードを記述できます。 しかし、それはまた アプリケーション開発のための強力なツール.
従来のJava開発と比較して見たパフォーマンスの向上に感銘を受けました。 Quarkusを自分で試してみたい場合は、開始方法に関するチュートリアルを確認してください。
コメントを残す