BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Azure FunctionsがJavaをサポート

Azure FunctionsがJavaをサポート

原文(投稿日:2017/10/27)へのリンク

JavaOneで、MicrosoftはAzure FunctionsのJavaサポートを発表した。Azure Functionsを使うと、ユーザーはクラウド上でちょっとしたコードを実行できる。今回のアップデートは、Azure Functionsのサポート言語数を増やして、MicrosoftをサーバーレスJavaサポートを導入する2つ目の主要なクラウドプロバイダーにするものだ。

Igniteで、MicrosoftはAzure Functionsを.NET Core 2.0にポートし、クロスプラットフォームの.NETを使えるようにして、他のプログラミング言語のサポートを可能にするランタイムを提供した。そして今、Javaがパブリックプレビューになった。Azure Functionsを使っている開発者の間で、長く未解決だった機能要求の一つだ。

Microsoftは、Mavenビルド自動化システムのための新しいプラグインもリリースした。開発者は既存のMaven対応プロジェクトから、Azure Functionsを作成、ビルド、デプロイできるようになる。

Microsoftがイベント駆動アプリケーションを実行するためサーバーレスコンピュート機能、Azure Functionsをリリースしたのは、およそ1年前のことだ。開発者は、Azure FunctionsをC#、F#、JavaScript (Node.js)、PowerShell、PHP、Python、Bashといったプログラミング言語およびスクリプト言語で書いたり、実行コマンドやバッチファイルをアップロードして、関数として実行することができる。関数は、Cosmos DB、Service Bus、Storageといった他のAzureサービスや、GitHubなどのサードパーティサービスと統合可能だ。Azureサービスは、関数をトリガーしてロジックを実行したり、設定バインディングによって入出力として機能する。Microsoftは、Azure Event Hubsの新規イベント受信、スケジュール実行、Service Busメッセージ処理といったタスクのテンプレートも提供している。

Azure Functionsは、Azure Active Directory、Microsoftアカウント、Facebook、Google、Twitterを含む、標準のOAuthプロバイダーによる認証をサポートする。Azure App ServiceのPartner Director of Program ManagementであるNir Mashkowski氏が、Microsoftの開発者向けブログで説明しているように、Javaでも同じ機能が使えるという。

新しいJavaランタイムでも、様々なトリガーオプションとデータバインディング、オートスケール付きサーバーレス実行モデル、実行ごとの課金など、Azure Functionsが提供する差異化機能はすべて使える予定です。

Javaサポートのために新しいツールを使う必要はない。開発者は、Eclipse、IntelliJ、VS CodeといったIDEやエディタを使って、Azure Functionsをローカルマシンでビルド、デバッグすることができる。

画像のソース: https://azure.microsoft.com/en-us/blog/announcing-the-preview-of-java-support-for-azure-functions/

主要なクラウドプロバイダーはみな、サーバーレスプラットフォームに投資して、他のサービスのさらなる利用を促している。Azure Functions、AWS Lambda、Google Cloud、あるいは新しいOracle Fnプラットフォームであっても、データベースやストレージを含む他のサービスのイベントが、サーバーレスコンピュートインスタンスの実行をトリガーする。

プラットフォーム間の差異は、デプロイメントから料金まで様々だ。たとえば、Azure Functionsは、手動によるスケーリングや事前設定したメトリックに基づくスケーリング(App Serviceプラン)、あるいは一秒未満の自動スケーリング(従量課金プラン)を提供しているが、AWS LambdaとGoogle Cloudは自動スケーリングだけだ。言語のサポートは大きく異なっている。Azure FunctionsとOracle Fnはより幅広い言語をサポートしているが、Google CloudはJavaScriptしかサポートしておらず、AWS LambdaはC#、JavaScript、Java、Pythonをサポートしている。さらに、JavaはRedMonkStack Overflowの言語ランキングで上位にランクされており、Javaのサポートはサーバーレスプラットフォームにおいて有益だ。

Pund-ITでPrincipal Analystを務めるCharles King氏は、MicrosoftとOracleのJavaサポートについて次のようにコメントしている。

Microsoftの新しいAzure Functions Javaサポートと、Oracleの最近のJavaOne/OpenWorldは、Java関連の継続的なイノベーションとJavaコミュニティの活力を反映しています。

Rate this Article

Adoption Stage
Style

この記事に星をつける

おすすめ度
スタイル

BT