アプリケーションのモダナイゼーション Emerging technology Tanzu

VMware 、Springの利用状況調査とオンデマンド教育コンテンツを公開

Spring とは、Java プラットフォーム向けのアプリケーションフレームワークです。Spring はオープンソースとして提供されており、VMware は Spring フレームワークの開発に大きく貢献しています。

VMware では、世界における Spring の利用状況調査を毎年実施しており、このたび 2023 年版が完成しました。本記事では、2023 年調査のハイライトを紹介します。

 

調査方法と回答者属性

今年で 3 回目となるこの調査では、VMware の委託を受けた Dimensional Research 社が調査を担当し、Spring の導入と利用を担当する責任者にその体験や見解を尋ねました。調査対象は、さまざまな規模の組織で Spring を使用している開発者、アーキテクト、開発マネージャです。今年の調査では、総計 1,421 名の回答者が参加しました。回答者の職務、地域、役職は多岐にわたります。日本からは約 1% の方に回答いただいています。

図:回答者の属性

 

マイクロサービスは普及、新たにモジュラーモノリスの台頭

Spring のメリットのひとつは、開発者が言語やフレームワークを新たに習得する必要なしに、最新のテクノロジーを取り入れることができる点です。2022 年の調査でも、モダンなアーキテクチャスタイルの採用拡大の傾向は続いており、回答者の 55% が現在「主にモダンなアーキテクチャスタイル」を使用していると回答しました。中でもマイクロサービスがもっとも主要なアプリケーションアーキテクチャであり、回答者の 93% がこのスタイルを使用しています。 サーバレスは昨年の 19% から増加し、回答者の 24% が使用しています。 リアクティブ アーキテクチャ(35% が使用)には昨年から変化がありませんでした。

2022 年の調査では、アーキテクチャスタイルに関する回答項目として「モジュラーモノリス」を追加しました。これは、ビジネス要件の変化に対応するためにモノリシックなアプリケーションを効率的に進化させ ることを目的として、モノリシックかつモジュラーなシステムというコンセプトが再び注目を集めるようになってきたためです。

Spring Modulith は実験的な Spring プロジェクトであり、開発者が正しく構造化されたアプリケーションをビルドするうえで役立ちます。回答者の 42% がモジュラーモノリスを使用していると回答しましたが、 このスタイルを選択した回答者の多くは、実際には従来型のモノリスを使用している可能性が高いと考えられます。その根拠は、「主にモダン なアーキテクチャを使用している」と答えた回答者のうち、「モダンと 従来型の両方のアーキテクチャを併用している」と答えた回答者の割合 が 69% であったのに比べ、「モジュラー モノリスを使用している」と 答えた割合が 27% と大幅に低かったためです。

図:Spring で実装しているモダンな アーキテクチャ スタイル

 

API は引き続き Spring の 最有力ユースケース

今年の調査においても、API の利用が Spring のもっとも主要なユース ケースとなっています。「社内利用者への API の公開」はこの調査の開始時から年々着実な増加を見せており、今年もトップのユースケース (回答者の 86% が選択)となりました。また、「社外利用者への API の公開」 は今年 2 位に浮上(回答者の 73% が選択)しています。

もっともよく使用されている API のタイプとして、OpenAPI と GraphQL を選択した回答者が増えています。OpenAPI は言語非依存の標準 API であり、これを使用することで人間とマシンの両方がサービスの機能を検出して理解できます。このタイプの API を使用している回答者の割合は昨年から 6 ポイント増加しました。また、API のためのオープンソースのデータクエリ言語である GraphQL の導入が急速に広まっており、回答者の約 4 分の 1  ( 24% ) が使用しているという結果になりました。Spring アプリケーションへの GraphQL の統合を容易にするために Spring for GraphQL が提供されています。

図:API を利用するアプリケーションと API の種類

Kubernetes と Spring

Spring 環境における Kubernetes の利用は引き続き増加しており、2022 年には前年の調査から 8 ポイント増え、回答者の 62% が Kubernetes を利用しています。回答者の約半数(45%)が、パブリッククラウドにおいて本番稼働の Spring ワークロードを Kubernetes 上 で実行しています。また、オンプレミスの Kubernetes 上で本番稼働させている回答者の割合も 34% であり、Kubernetes は主要なプラットフォームであるといえるでしょう。Spring ユーザーは Kubernetes をサポートする新しい機能を求めています。もっとも多くの回答者が希望しているのはネイティブへのコンパイル(57%) であり、次いで Spring アプリケーションの管理(54%)、Kubernetes ネイティブのサービス検出(52%)となっています。Spring チームはこうした要望に対し、 Spring Framework 6Spring Boot 3 によってネイティブ イメージ生成に対する高度なサポートを提供するという形で応えました。

 

Spring の最新技術の習得と Spring Academy の発表

テクノロジーの進化のペースが速まるにつれて、最新の動向を追従することが困難になり、学習とトレーニングの重要性が高まっています。 2022 年の調査では、Spring コミュニティが情報の入手に利用している リソースについて詳細に調べました。

Spring の知識を学ぶためにどのリソースを利用しているかという質問への回答として、「Spring.io」が第 1 位になりました(回答者の 80% が選択)。第 2 位は「Stack Overflow」(77% が選択)、第 3 位は「Baeldung」 (72% が選択)でした。上位 5 位のリソースを選択した回答者の割合は軒並み増加して おり、ユーザーが、必要な情報を得るためにより注力するようになっていることが推察されます。

情報リソースを探している開発者にとって一番の関心事は多くの場合、プロジェクトを滞らせないために課題をすばやく解決してくれるリソースを見つけることでしょう。今年の回答で増加していた課題としては、「多数のコンポーネントの機能と使用すべき状況を把握するのが難しい」(回答者の 37% が選択) および「モジュールを組み合わせて使用する方法に関する情報が不足している」(29% が 選択)などがありました。

Spring Academy の発表

開発者やアーキテクトにとって、Spring エコシステムの進化に後れを取らず対応することがプロ ジェクトを成功させる上で重要です。Spring チームはこうした認識に基づき、Spring Academy を公開しました。Spring Academy はプロジェクトベースの包括的な学習プラットフォームで あり、最新の技術を理解して活用するために必要な知識と体験の機会を提供します。

Spring Academy のコースは、Spring フレームワークのエキスパートによって作成されており、 ユーザーは最新の情報を学ぶことができます。また、実践的な学習体験を通じて、学んだことを応用し、堅牢かつスケーラブルで、保守が容易なアプリケーションを作成するために必要なスキルも習得できます。さらに、ブラウ ーベースのラボ環境では、演習を簡単に修了するのに必要なツールがすべて提供されています。

Spring Academy は無料で受講することが可能ですが、オプション(有料)の Spring Academy Pro のメンバーシップに登録すると、限定コンテンツやビデオレッスン、ハンズオンラボを利用できるほか、Spring Certified Professional 認定試験 の受験に使用できるバウチャーも入手できます。

https://spring.academy

 

この記事のフルレポートはこちらからダウンロードが可能です。詳細をご覧になりたい方はダウンロード(無料)をお願いします。