TOPCloud > サーバーレスコンピューティング、知っておくべき要点(上)

Cloud

サーバーレスコンピューティング、知っておくべき要点(上)

2019/07/22

Josh Fruhlinger InfoWorld

 企業の開発チームは、膨大な時間を費やして、ビジネス上の問題を解決するためのコードを開発する。また運用チームは、膨大な時間を費やして、そのコードの動作を担うコンピューターが円滑に稼働するよう面倒を見る。だが、管理の作業は果てしなく続く。他人に任せることで負担を軽減できれば、それに越したことはない。

 仮想マシン、クラウドコンピューティング、コンテナなど、この20年間にIT界で起きたイノベーションの多くは、コードが動く時の基盤となる物理マシンについてあまり考えなくて済むようにすることを主眼としてきた。ますます広がりつつあるサーバーレスコンピューティングは、その発想を追求した先にある。土台にあるハードウエアやOSの管理について、コードの開発者が何も考えなくても、サービスの事業者が面倒を見てくれる。

サーバーレスコンピューティングとは

 サーバーレスコンピューティングは、クラウドを利用した実行モデルの1つだ。特定のコードを実行する際に、その実行に必要な分だけのコンピューティングリソースやストレージを、クラウドサービス事業者が動的に割り当てる。料金も、実際に使用したリソースの分だけ支払えばよい。もちろん、サーバーレスといっても、実際はどこかでサーバーが動いているが、そのプロビジョニングや保守は、すべてサービス事業者に任せられる。

 米Amazon Web Services(AWS)のサーバーレスデベロッパーアドボケイトであるChris Munns氏は、2017年のカンファレンスで、コードの作成やデプロイを行うチームの観点から、次のように説明していた。「管理やプロビジョニングを行うべきサーバーは一切ない。ベアメタルも、仮想マシンも、コンテナもない。サーバーレスの世界では、ホストを管理したり、ホストにパッチを適用したり、OSレベルで何かを扱ったりといったことが絡む作業は、一切しなくてよい」

 MartinFowler.comの記事で開発者のMike Roberts氏が説明しているように、かつてサーバーレスコンピューティングという言葉は、いわゆる「BaaS(Backend as a Service)」を表すのに使われていた。モバイルアプリで必要とされる機能や処理を、クラウド上で動くバックエンドサーバーから提供するサービスだ。

↑ページ先頭へ