常時稼働のサーバー(仮想マシン)を極力使わずにシステム基盤を構築する「サーバーレスアーキテクチャー」が、クラウドサービスを利用するユーザー企業の間で注目を集めている。最近になって、IoT(Internet of Things)や動画配信といったシステムでの採用が相次いでいる。

 例えば、JINSブランドのメガネを扱うジンズは2017年6月、メガネ型ウエアラブルデバイス「JINS MEME」を支える基盤にサーバーレスアーキテクチャーを採用したことを、アマゾン ウェブ サービス ジャパンの年次イベント「AWS Dev Day Tokyo 2017」で公表した。

 ジンズのほかにも、東急ハンズ、毎日放送、富士フイルムイメージングシステムズなど、さまざまな企業がサーバーレスアーキテクチャーを採用している(表1)。

表1●サーバーレスアーキテクチャーを採用した企業の例
表1●サーバーレスアーキテクチャーを採用した企業の例
[画像のクリックで拡大表示]

 ユーザー企業がシステムを構築する際は一般に、軽量のサーバー生成技術である「コンテナー型仮想化」を応用した、「イベント駆動型コード実行サービス」と呼ばれるクラウドサービスを利用する。ジンズなどはAWSの「AWS Lambda」を、富士フイルムイメージングなどは米マイクロソフトの「Azure Functions」を利用する。同種のサービスには2社のほか、米IBMの「OpenWhisk」や、米グーグルのベータ版「Cloud Functions」がある。

 ユーザーがサーバーレスアーキテクチャーに注目する理由は、IoTや動画配信などのシステムに共通して発生しやすい課題と相性が良いためと考えられる。発生しやすい課題とは、(1)性能を見積もりにくい、(2)利用料金がかさむ、(3)運用監視の負荷が掛かる、だ(図1)。

図1●IoTなどのシステムの主な課題とサーバーレスアーキテクチャーの特徴
図1●IoTなどのシステムの主な課題とサーバーレスアーキテクチャーの特徴
[画像のクリックで拡大表示]

 例えば(1)の性能に関する課題は、必要な時に必要なリソースを自動的に確保できるというサーバーレスアーキテクチャーの特徴によって解決しやすい。

 また、サーバーレスアーキテクチャーはリクエスト回数や処理時間に応じた課金体系を取る。処理がないときはコンテナーを停止しておき、必要な時だけ起動する運用にすれば利用料金を節約しやすい。この特徴によって(2)の利用料金の課題が解決しやすい。(3)の運用監視の負荷についても、処理がないときはコンテナーを停止しておくので下げやすい。

技術やサービス仕様の見極めが大事

 もちろん、サーバーレスアーキテクチャーも万能ではない。むしろサーバー仮想マシンを常時稼働させたほうが、システムの安定性でもコスト面でも有利な場合も多い。先行ユーザーも、適材適所を見極めた上で選択している。一例は、東急ハンズのシステムの構築・運用を手掛けるハンズラボである。