JavaOne Microsoftは、AWS Lambdaと競合するサーバーレスクラウドプラットフォームであるAzure FunctionsのJavaサポートを発表しました。この発表は、今週サンフランシスコで開催されているJavaOneイベントで行われました。
このサービスは現在パブリックプレビュー中です。Javaは、MicrosoftがAzure Functionsランタイムを再設計し、さまざまなプログラミング言語のサポートを強化したことを受けて追加された最新の言語です。
Azure Functions は、HTTP 経由の直接呼び出し、スケジュールされた実行、Azure Service Bus メッセージ、Azure ストレージ内のファイルの変更、または 8 月に発表された Azure イベント ルーティング サービスである Event Grid によって管理されるイベントへの応答など、さまざまな方法でトリガーできます。
Azure Functions は実行ごとに課金され、自動的にスケールします。サポートされている言語は、C#、F#、Node.js、Python、PHP、Bash です。
オラクル副社長:「次の10年はJava第一、Java常勝を目指します」
続きを読む
Microsoft は、開発およびテスト用に Azure Functions ホストをローカルで実行するためのツールも提供しています。Azure Functions Core Tools は Node.js と .NET Core を使用し、Windows、Linux、Mac で動作します。
Java 開発者には、ビルドとデプロイメントを管理する Apache Maven 用のプラグインもあります。
Azure Functions で Java が選ばれる理由とは?Java は、全体的な人気では JavaScript に後れを取っているものの、エンタープライズ開発では依然としてトップの言語です。Microsoft が、レドモンドのプラットフォームコミュニティを超えて Azure に開発者を引き付けたいと考えているのであれば、Java のサポートは不可欠です。
なお、Amazon の AWS は、2015 年 6 月から同様の Lambda サービスで Java サポートを提供しています。Lambda には AWS SAM (Serverless Application Model – Local) と呼ばれるローカル開発オプションもあるため、Microsoft の提供内容はそれほど目立ったものではありません。
とはいえ、Office 365 や Dynamics 365 などの他の Microsoft サービス、または CosmosDB などの Azure データベースと統合する場合は、Microsoft のクラウド上に構築する十分な理由があります。
Microsoftは既に、App Serviceを含む様々なサービスやコンテナ内での実行において、Azure上でJavaをサポートしています。サーバーレスの利点は、純粋なクラウドモデルであることです。開発者はコードを提供するだけで、そのコードがAPIを介して基盤となるプラットフォームと通信します。もちろん、最終的にはすべて実際のサーバー上で実行されます。サーバーレスとは、ホストシステムや仮想マシンの展開、保守、スケジュール設定、そして解体について心配する必要がないことを意味します。コードを提供するだけで、Azure(あるいはAWSなど)が自動的にホスティングを処理してくれるのです。うまくいくことを祈っています。
詳細はこちらをご覧ください。®