サーバレスとPaaSの境界線はあいまいになっていくのではないか。サーバレスのこれからをAzure Functions開発者に聞いた
AWS LambdaやAzure Functionsなどのサーバレスプラットフォームは、クラウドの活用方法としていまもっとも注目されている分野のひとつです。
このサーバレスに関する国内最大のイベント「Serverlessconf Tokyo 2018」が9月28日から都内で開催されました。
その基調講演で来日したAzure Functionsの開発を担当するマイクロソフトのPrincipal Software Engineering Lead、Chris Gillum氏に、Azure Functionsの開発の経緯やサーバレスの将来像などについて聞きました。
Azure FunctionsはAWS Lambdaにインスパイヤされて開発したのか?
──── GillumさんはAzure Functionsの開発者のひとりと聞いています。そこで最初にお伺いしたいのは、Azure Functionsがどのように開発されたのかについてです。Azure FunctionsはAWS Lambdaに触発されて作られたのか、それともマイクロソフトはAWS Lambdaとは関係なく独自にサーバレスを開発していて、それがAzure Functionsになったのでしょうか?
Gillum氏 おそらくその両方です。もともと私はMicrosoft AzureでPaaS機能を提供する「Azure App Service」の開発チームにいました。
このチームには社内ハッカソンを行うカルチャーがあり、定期的に開発者がアイデアを持ち寄って社内ハッカソンの機会に実装を行っていました。
その社内ハッカソンで私は、現在「Azure Web Jobs」と呼ばれている機能の開発をサポートしていました。そのときに開発した機能は、イベントをトリガーとして関数を呼び出すような、現在のサーバレスに近いものでした。
──── それはAWS Lambdaを知る前に作っていたと?
そうです。その後にAWS Lambdaを知るようになり、とても似ていることに気がつきました。そしてサーバレスに将来性があると考え、Azure Web Jobsをもとに機能強化をしてAzure Functionsの開発を進めることにしたのです。
サーバレスはPaaSを超えるマジョリティをとれるのか?
──── アプリケーションプラットフォームとしてのサーバレスは、PaaSを置き換えていくほど広まるのでしょうか? それともイベントドリブンなアプリケーションのためのプラットフォームにとどまるのでしょうか?
Gillum氏 サーバレスそのものはさらに広まっていくと思います。それはサーバレスに開発生産性やコスト面で優位性があるからです。
ただ、サーバレスがすべてのアプリケーションのためのプラットフォームになるということも考えにくいでしょう。これからサーバレスと従来のPaaSの境界線は、どんどんあいまいになっていくのではないでしょうか。
──── ERPやCRMといった業務アプリケーションもサーバレス化が進むといったことはあるとお考えですか?
Gillum氏 いくつかの段階を踏んでサーバレスへの対応が進むのではないでしょうか。例えば最初はERPやCRMのカスタマイズのために、サーバレスを呼び出せるようなフックをコアロジックに持てるようになるような拡張が行われる、といったものです。
ただエンタープライズの顧客は大きな変化を嫌う傾向があります。少しずつアーキテクチャの進化を通じてサーバレス化が進むのではないでしょうか。
サーバレスの標準化は進むと考えているか?
──── いまAWS LambdaやAzure Functionsなどのあいだに互換性はありません。長期的に見て、互換性を持つための標準化が進むとお考えですか?
Gillum氏 ある程度の標準化の動きはすでにあって、マイクロソフトもそうしたさまざまなコミュニティと協業をしています。ただ、将来完全に標準化されるかというと、それも難しいと思います。
というのも、サーバレスのメリットの一定部分はそれぞれのベンダに依存するものだからです。標準化されベンダの特長が薄れるほど、現在のメリットと比較して顧客が得られるメリットが小さくなってしまうと思います。
ただこうした動向にはもちろん私も注目しており、だからこそServerlessconfに来るのが好きで、顧客の反応や事例などを拝見し、マイクロソフトとして協力できることや価値を提供できることを考えるようにしています。
──── サーバレスを開発している立場として、これからサーバレスをどう進化させていきたいですか?
Gillum氏 例えばAzure Functionsはイベントドリブンなコンピュートという基本的な機能から始まり、いまではそこにステートフルな関数を記述できるDurable Functionsが加わりました。
これらは同じサーバレスのコンセプトを持ちますが、ステートフルな関数にも適用が広がっていったように、これからもさまざまな形式のアプリケーション開発がサーバレスでより簡単にできるようになっていくと思います。
また、モニタリングの分野もさらに進化していくと考えています。というのは、この部分は多くのエンジニアが課題を抱えているからです。例えば、たくさんある関数のどれがどれを呼び出しているのか、それをどうトレースしていくか、可視化していくかなどは、まだ進化させていく余地が大きいでしょう。
セキュリティ面にも多くの投資をしていきます。ユーザー企業からはこの面で多くの要望が寄せられており、サーバレスもこの部分はさらに進化していくと思います。
──── ありがとうございました。
あわせて読みたい
国内パブリッククラウド市場、2022年には2017年の約3倍に。セキュリティに対する漠然とした不安は解消。IDC Japan
≪前の記事
Kotlin/Nativeがベータに到達、Kotlin 1.3にバンドル。Win/Mac/iOS/Android/WebAssemblyのバイナリ生成。KotlinConf 2018