コードさえ書けばサーバーやミドルウエアを用意しなくても実行してくれる――。「サーバーレスアーキテクチャー」が注目されるなか、基盤であるイベント駆動型コード実行サービスをクラウドベンダーが充実させている。

 米IBMは2016年12月14日(米国時間)、「IBM Bluemix OpenWhisk」を正式リリース。これに先立つ同年11月には米マイクロソフトが「Azure Functions」の一般提供を開始した。

 サーバーレスアーキテクチャーで先駆けとなった米アマゾン ウェブ サービス(AWS)が提供する「AWS Lambda」は、IoT(インターネット・オブ・シングズ)機器でも利用可能にするなど、適用領域を広げている。米グーグルも「Google Cloud Functions」を公開済みで、主要クラウドサービス上でサーバーレスアーキテクチャーを実現するサービスが出そろった。 

 OpenWhiskやLambdaといったイベント駆動型コード実行サービスでは、処理開始のきっかけとなる「トリガー」とプログラムされた処理である「アクション」が主要コンポーネントとなる。この組み合わせで「センサーからデータが到着するたびにエラーの有無を調べる」といったイベント駆動型処理を簡単に実装できる。

IBM Bluemix OpenWhiskの概要とメリット
IBM Bluemix OpenWhiskの概要とメリット
[画像のクリックで拡大表示]

 日本IBMでクラウド事業統括コンサルティング・アーキテクトを務める平山毅氏は「サーバーレスアーキテクチャーは、イベント駆動でリアルタイムに情報をやり取りするようなアプリに向く」と話す。

 アクションが呼び出されると、イベント駆動型コード実行サービスは、プログラミング言語に合ったランタイムで実行。必要に応じて自動でスケールアウトする。利用者は、アクション実行時の料金だけを支払えば済む。