Quarkus 1.8 リリース - 複数の永続化ユニット、Micrometer、jbang、GraalVM 20.2

Red Hat で Solution Architect として Quarkus を担当している伊藤ちひろ(@chiroito)です。

この記事は、Quarkus.io のブログ記事、Quarkus 1.8 released - Multiple Persistence Units, Micrometer, jbang, GraalVM 20.2 の翻訳記事です。

夏の間、Quarkus 1.8 を焼くために頑張ってきました。

それはいくつかのピカピカの新機能が付属していますが、中でも以下のような機能があります。

  • Hibernate ORM 拡張機能のための複数の永続化ユニットのサポート
  • 新しい Micrometer の拡張機能
  • 簡単な Quarkus ベースのスクリプティングのため jbang を統合
  • GraalVM 20.2 へのアップデート

いつものように、バグ修正や使い勝手の改善、ドキュメントの改善なども行われています。

移行ガイド

既存のアプリケーションの移行をお考えですか?1.8 への移行ガイドはこちらです

Java 11 に対応した GraalVM 20.2 は、推奨される GraalVM のバージョンです。

何が新しいの?

複数の永続性ユニット

これまで、Quarkus の標準設定では、Hibernate ORM 拡張機能は 1 つの永続化ユニットしかサポートしていませんでした。persistence.xml を使用することでこの制限を回避することができますが、実用的ではありません。

1.8 では、Hibernate ORM 拡張機能に複数の永続化ユニットのサポートが導入されています。この機能はまだ実験的なものです。ですが、不安定というわけではありません。もしかしたら、フィードバックによっては設定方法に手を加えるかもしれません。この機能をお使いの方は、Zulip や私たちの quarkus-dev メーリングリストへのフィードバックをお願いします。

この新機能の詳細とアプリケーションでの使用方法については、Hibernate ORM 拡張機能ガイドを参照してください。

標準の Hibernate ORM エンティティは複数の永続化ユニットに属することができます。ですが、Panache エンティティは 1 つの永続化ユニットにしか属することができません。

Micrometer 拡張機能

Micrometer は、アプリケーションからメトリクスを収集するために広く使われているライブラリです。既存の MicroProfile Metrics の実装に比べて大きな利点は、みなさんの通常のモニタリング・ツールに多くのダッシュボードが利用できることです。

Quarkus 1.8 では、quarkus-micrometer と呼ばれる Micrometer の新しい拡張機能が導入されています。それについて詳細を学ぶためにはこのガイドを参考にしてみてください。

jbang を使ったスクリプト

Quarkus 1.8 は jbang との統合を提供しています。これは Maven や Gradle の実行に必要なJava のスクリプトやアプリケーションを書けます。

Quarkus スタックを使用したクイックスクリプトの作成が簡単になりました。jbang を使ったスクリプトガイドで詳しく説明しています。

GraalVM 20.2

Quarkus のアプリケーションからネイティブの実行ファイルをビルドしている場合は、推奨バージョンである GraalVM 20.2 にアップデートする時期になっています。このバージョンはこれからの時期におすすめのバージョンです。

SmallRye OpenAPI

SmallRye OpenAPI のユーザーは、生成された API ドキュメントを保存する機能をしばしば要求します。

新しい quarkus.smallrye-openapi.store-schema-directory プロパティは、まさにこれを実現します。

Quartz

quarkus.quartz.instance-name 設定プロパティを設定することで、Quartz の設定が可能になりました。

1.8 からは、Quartz ジョブで CDI インジェクションを使用できるようになりました。

拡張ポイント(トリガーリスナー、ジョブリスナー、プラグイン)の設定が変更されていますの。この機能をご利用の方は、更新されたドキュメントを参照して設定を移行してください。

MongoDB with Panache の Kotlin をサポート

私たちの拡張機能の中には、Kotlin を適切にサポートするためにいくつかの追加が必要なものがあります。これは、MongoDB with Panache 拡張機能の場合です。

MongoDB with Panache と Kotlin を使用している場合は、プロジェクトに quarkus-mongodb-panache-kotlin 拡張機能を追加してください。

完全な変更ログ

1.8.0.CR11.8.0.Final の完全な変更ログはGitHubで入手できます。

ADOPTERS.md

Quarkusの使用に関する情報を共有するために、リポジトリのルートにADOPTERS.mdファイルを追加しました。

Quarkusを使用していて、私たちのブログでインタビューを受けたい場合、または単にこのファイルに追加したい場合は、私たちにご連絡ください。

貢献者

Quarkusには現在356人の貢献者がいます。皆様、本当にありがとうございました。

特に1.8リリースについてはみなさんのおかげです。

Aaron Coburn, Alex Soto, Alexey Loubyansky, Andreas Eberle, Andrej Petras, Andy Damevin, Antonio Goncalves, antonwiens, Bill Burke, Bobby Alex Philip, Charlie Powicki, Clement Escoffier, Daniel Platz, Dmitry Shohov, Enercido Alcantara, Erin Schnabel, Fabian Stäber, Falko Modler, Foivos Zakkak, Galder Zamarreño, Garima Monga, Gautier de Saint Martin Lacaze, George Gastaldi, Georgios Andrianakis, ghokun, Guillaume Le Floch, Guillaume Smet, Gunnar Morling, Gwenneg Lepage, Gytis Trikleris, Jaikiran Pai, Jan Martiška, Juri Berlanda, Justin Lee, Katia Aresti, kdnakt, Ken Finnigan, ketoketo, Kevin Viet, Knut Wannheden, Ladislav Thon, Laurent Broudoux, Luca Burgazzoli, Leandro, Loïc Hermann, Loïc Mathieu, Manyanda Chitimbo, MarceloArraes, Martin Kouba, Martin Schoene, Matej Novotny, Matthias Harter, Max Rydahl Andersen, Michael Simons, Michał Górniewski, Michał Szynkiewicz, Moncef, Moritz Becker, noelo, Pasquale Congiusti, Paul Carter-Brown, Phillip Kruger, Radim Vansa, Rafael T. C. Soares (A.K.A Tuelho), Raffael Hertle, Ramiz Ismailov, Roberto Cortez, Rohan Maity, Romain Quinio, Rostislav Svoboda, Sanne Grinovero, Sebastian Daschner, Sergey Beryozkin, Steffen Vinther Sørensen, Stuart Douglas, Stéphane Épardaud, Thomas Segismont, TNM Technologies, tomekl007, Yashar Imanlou and Yoann Rodière

参加しよう

私たちはあなたのフィードバックをとても大切にしていますので、バグを報告し、改善を依頼してください...一緒に何か素晴らしいものを作りましょう!

Quarkusのユーザーや好奇心の強い人は、恥ずかしがらずに歓迎コミュニティに参加してください。

* 各記事は著者の見解によるものでありその所属組織を代表する公式なものではありません。その内容については非公式見解を含みます。