原文はこちら。
The original article was written by Peter Nagy (Product Manager at Oracle).
https://medium.com/helidon/helidon-2-2-0-released-cdd3b7c43dd1
HelidonチームはHelidon 2.2.0の提供を発表できることをうれしく思います。以下の新機能や機能改善が入っています。
- MicroProfile GraphQL のサポート
- Micronaut 統合
- Virtual Threads (Project Loom) のサポート
- MySQL JDBC ドライバでのGraalVM Native Imageのサポート
- バグ修正や全体的な小規模の改善
Helidon 2.2.0は新しいメジャーリリースではないので、現在バージョン2.xを使っているならば、API変更について心配する必要はありません。もしまだHelidon 1.xをお使いなのであれば、2.xにアップグレードすることを検討してください。MicroProfile 3.3アプリケーションでのGraalVM Native Imageのサポートなど、Helidon 2.xには数多くの見逃せない機能があります。
What’s New in 2.2.0

MicroProfile GraphQL Support
ここ数年にわたり、開発者や企業が驚くほどの勢いでGraphQLの採用を進めています。まだGraphQLを試していないのであれば、試すべき理由を以下に記載しておきます。
- GraphQLを使ってクライアントが必要なデータを正確に指定できる
- GraphQL APIは複雑なクエリを処理できるスマートなエンドポイントを1つだけ持つ(多数の堅苦しいエンドポイントはない)。GraphQLを使用することで、複数のソースからのデータを簡単に集約できる。
- HelidonはMicroProfile GraphQL 1.0.3を実装し、より効率的なクライアント・サーバ間通信を開発するための将来性のあるポータブルなコードファーストのAPIセットを確保している。
- GraphQLはグラフデータベースとは何の関係もない。
以下の記事を一読し、はじめてのGraphQLベースのアプリケーションを作成するためのチュートリアルを試してください。
MicroProfile GraphQL Support Now Available in Helidon MP
https://medium.com/helidon/microprofile-graphql-support-now-available-in-helidon-mp-dbc7bc0b4af
https://logico-jp.io/2020/12/22/microprofile-graphql-support-now-available-in-helidon-mp/
MP — MicroProfile GraphQL
https://helidon.io/docs/v2/#/mp/graphql/01_mp_graphql
Micronaut Integration
Micronaut Data(やSpring Data)を検討してはいるものの、MicroProfileを引き続き使いたいと思っているのであれば、いいお知らせがあります。HelidonはMicronaut Dataと統合し、MicroProfile環境でデータリポジトリの体験を提供します。Micronaut Dataのドキュメントをチェックするとともに、チュートリアルでご自身でお試しください。
Helidon with Micronaut Data Repositories
https://medium.com/helidon/helidon-with-micronaut-data-repositories-daf6ddefee0b
https://logico-jp.io/2020/12/22/helidon-with-micronaut-data-repositories/
HelidonやMicroProfileの構成を使ってMicronautの機能を構成し、Micronaut Singleton beansとMicronaut interceptors(とCDI beans)が利用できます。最終的に、この統合を最大限に活用するためGraalVM Native Imageを使ってアプリケーションをコンパイルしてもよいでしょう。
Virtual Threads Support — OpenJDK Project Loom
Project Loom由来のVirtual Threadsのサポートがまもなくやってきます。Helidonチームは既に統合作業を開始しており、Helidon 2.2.0ではVirtual Threadsを使うアプリケーションをテストするための実験的機能を提供します。まだご存知でない方は、Project Loomを見て、その利点を確認してください。
Project Loom wiki
https://wiki.openjdk.java.net/display/loom/Main
Blocking I/Oがわからなくても問題ありません。リアクティブプログラミングは忘れて、よりシンプルで楽しい同期プログラミングの時代に戻りましょう。
現時点で、GraalVM Native ImageにはLoomをサポートする早期アクセスビルドはありませんので、ネイティブ実行バイナリを作成できません。Virtual Threadsを試すにはOpenJDK 16 EA buildを使う必要があります。
Project Loom Early-Access Builds
https://jdk.java.net/loom/
As always, many thanks to our contributors.
質問やコメントがあれば、Webサイト、このブログ(の原文)、YouTubeチャネルに投稿していただくか、SlackやStackoverflowで尋ねてください。
Project Helidon
https://helidon.io/
YouTubeチャネル
https://www.youtube.com/c/helidon_project
Slack
https://helidon.slack.com/
Stackoverflow
https://stackoverflow.com/tags/helidon
Additional Resources
HelidonのGitHubリポジトリ
https://github.com/oracle/helidon
MicroProfile
https://microprofile.io/