[速報]Java対応のサーバレスプラットフォーム「Fn Project」、オラクルがオープンソースで公開。JavaOne 2017
サンフランシスコで開幕した「JavaOne 2017」。初日の基調講演では、オラクルがJava対応のサーバレスプラットフォーム「Fn Project」(エフエヌプロジェクトと発音されていました)を発表。オープンソースとして公開しました。

Fn Projectは、3つコンポーネントで構成されています。1つ目はFunction as a Serviceを実現する「Fn Server」。クラウドでも、手元のノートPCでも実行可能で、コンテナネイティブとして開発されています。
2つ目は、Java Function Development Kit(Java FDK)。JavaでFunctionを記述するためのSDKです。テストも可能。
3つ目は、Functionのオーケストレーションによる高度なワークフローを実現するFn Flow。
Fn Projectは言語に依存しないサーバレスプラットフォームとされていますが、Javaが最初に正式サポートされる言語となります。
コードは1本のコードとして見える
下記が基調講演で示されたFn Projectに対応したアプリケーションのサンプルコード。
見た目は1本のコードのようになっていますが、このコードには5つのFunctionが記述されています。1本のコードのように書けることで、従来のIDEで扱いやすく記述しやすいだけでなく、このままテストでき、ブレークポイントを設定してデバッグをすることも可能。

実行時には5つの関数として実行され、その裏ではさらに多くの呼び出しが行われ、それぞれ別のJavaVMで並行して実行されます。
と同時に、サーバレスアーキテクチャが備える、実行時のみの課金による経済性や並列性やスケーラビリティといった利点はFn Projectでもそのまま得られるようになっています。
Fn Flowで実行されているノードの一覧を表示。特定のノードをクリックすると、そのコールスタックの表示もできるため、実行内容の詳細を把握できます。

このFn Projectは、JavaOneの基調講演の壇上でオープンソースとして公開されました。

追記:オラクルはこの発表の翌日に、「Fn Project」を採用したサーバレスコンピューティング環境をクラウドで提供することを発表しました。
JavaOne 2017
あわせて読みたい
NetApp、ラスベガスでの乱射事件により、現地の年次イベント「NetApp Insight 2017」を順延
≪前の記事
Oracle DBのバージョンが「12c」から一気に「18c」へ、2018年由来。Oracle OpenWorld 2017