Migrating existing applications to Quarkus with Migration Toolkit for Applications
Javaの進化
Javaという言語には、いつも驚かされます。その構想から、「write once run anywhere」を前提とした最初のJava仮想マシン、Tomcat、あるいはEnterprise Editionの規格(J2EEでもJava EEでも)に至るまで、常に進化し続ける言語です。コンテナ化が進み、マイクロサービスを効果的に管理できるようになり、「リアクティブ」な方法でロードできるコンポーネントを実行し、起動速度と効率性が求められるようになったことで、QuarkusはクラウドネイティブJavaプログラマーの選択肢として登場しました。
ブラウンフィールドでの活用
しかし、何年もかけて何行ものコードを書いた後、これらのJavaワークロードをこの一連の新しいパラダイムに移行するにはどうすればよいのでしょうか?Red HatのModernization and Migration Solutionsチームは、 Migration Toolkit forApplications (MTA)というツールを提供することで、このステップに必要な労力を簡略化し、削減することを支援します。実は、Javaと同様にMTAも新しいツールではなく、時間をかけて進化してきたものなのです。
It all started by helping developers update their code to run in a new JBoss EAP version, a "piece of cake". That’s why the tool started by being called "JBoss Cake" back in 2012. It kept evolving to be able to be used to modernize Java code and move it from WebLogic or WebSphere to JBoss EAP or JBoss Web Server (the Red Hat Supported build of Tomcat), when it became the Red Hat Application Migration Toolkit. It kept being improved by developers and consultants, bringing their experience by working in the first line with production code, who wrote more and better rules, increasing the number of covered cases.
MTA 5.1.2以降
最新の進化の中で、このツールは現在の名前であるMigration Toolkit for Applications(MTA)と呼ばれるようになりました。5.0.0のリリースでは、Spring BootフレームワークからQuarkusへのアプリケーションの移行を支援する最初のルールの提供が開始されました。これは、最新のJavaパターンを使用し、Kubernetesにデプロイする開発者チームが興味を持っているというフィードバックを受けたことなどによります。これらのチームは、Spring Bootを使用していましたが、スピード、必要なリソース、生産性を向上させる方法として、すぐにQuarkusに興味を持つようになりました。MTAはバージョン5.1.1で120ルールの壁を突破し、このトランスフォーメーションの道を容易にしました。そして、今後MTAのリリース5.1.3(2021年3月中旬までに予定)では、Quarkus 1.11向けに書かれたコードをアップグレードするためのルールが含まれており、1.12への移行を効率的に行うことができます。簡単ですね!
関連リソース
もっと知りたいですか?ここでは、MTA関連のリソースをご紹介します。
-
MTAのWebページ(ダウンロード、デモビデオあり)
-
MTAによるSpring BootからQuarkusへの移行(developers.redhat.com 内)
-
Spring Boot「Pet-Clinic」(REST版)のQuarkusへの移行 (konveyor.io のミートアップレコーディング)