Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

伊藤直也氏が語る、分散アプリケーションアーキテクチャの現在 ~Reactive SystemとMicroservices【デブサミ秋2015 基調講演レポート】

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2015/10/23 14:00

 ストリームデータを即時にWebに反映する「リアルタイムWeb」は、TwitterやFacebookなどが普及したことでそう目新しい技術ではなくなった。しかしその実装は、まだまだ力業でなされていることが課題だ。「Developers Summit 2015 Autumn」のKaizen Platform 伊藤直也氏によるセッションでは、リアリタイムWebを実現する分散アプリケーションアーキテクチャの昨今について、「Reactive System」と「Microservices」という2つのキーワードから読み解かれた。

目次
Kaizen Platform 技術顧問 伊藤直也氏
Kaizen Platform 技術顧問 伊藤直也氏

ストリーム処理は現状、まだまだ力業で乗り切っている

 まず、かつては大量トラフィックとデータを、どのように処理していただろうか。LAMP環境を作り、RDBにデータを溜める方法を取っていたが、複雑なバッチを流すとIOが詰まり障害が起こる、同期処理でWebアプリケーションを書いていると、貯めこんだデータをユーザーの画面にリアルタイムに表示するのが一苦労という課題があったそうだ。昨今は、巨大なデータに対するバッチ処理については、Hadoop、BigQueryなどの活用が当たり前になってきたので、バッチ処理で悩む機会は少なくなった。

 では、バッチ処理ではない処理、次々流れてくるデータをどうやってリアルタイムにアプリケーションに反映するかというストリーム処理については、それもまだまだ力業で乗り切っているのが現状だ、と伊藤氏は言う。例えば、KAIZEN Platformの自社サービスであるABテストサービスについて、ユーザーのサイトの、A案/B案どちらに流れたかといったログデータをリアルタイムで処理するとなると、普通の同期的なWebアプリケーションと全く違った要件になる。

 必然的に、裏側にログを受け取るログサーバーを置き、フロントのWebアプリと通信して、という分散システムになる。現在はこれらの実装を、Node.jsやRuby on Railsなどで疎結合に作っているが、今後どうなるかを見ていくのが、本セッションの主題だ。

標準的なAPIや作り方でリアルタイムWebを目指す「Reactive System」

 2010年ごろから、「リアルタイムWeb」という言葉が聞かれるようになった。Twitter、Facebook、Googleの検索に代表されるこのリアルタイムWebは、ストリームデータを受け取って、ユーザーにインタラクションを伴わせずに、画面に表示するというものだ。

「寿司の写真を見せたかったわけじゃないけど……」と聴衆の笑いを誘う伊藤氏
「寿司の写真を見せたかったわけじゃないけど……」と聴衆の笑いを誘う伊藤氏

 2015年には、リアルタイムWebという言葉は聞かなくなった。廃れたわけではなく、昨今はコモディティ化し、コンシューマー向けサービスではリアルタイムにデータを画面に反映することが当たり前になった。しかし、Pub/Subのミドルウェアを入れて一部だけイベント駆動にしたり、裏でポーリングして画面上位はAjaxを使ってリアルタイムに見せかけたり、JSON over HTTPで同期通信するだけだったりと、相変わらず力業でやっているのが現状だ。

 こうした課題を解決するためのものとして、伊藤氏が見たなかで印象深かったものは、Typesafeの「Reactive Platform」が挙げられる。Typesafeは、ScalaのフレームワークであるPlay Frameworkや、ミドルウェアAkkaなどの開発会社だ。Reactive Platformでは、データがストリーミングで流れてくるようなリアルタイムWeb的なオペレーションを、標準的なAPIと作り方で、よくあるフレームワークで書けるようにするということを目指している。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 近藤 佑子(編集部)(コンドウ ユウコ)

    CodeZine編集部 副編集長。1986年岡山県生まれ。京都大学工学部建築学科卒業、東京大学大学院工学系研究科建築学専攻修士課程修了。「院試浪人中に暇だったから」「プログラマーの友人が増えたから」という理由でプログラミングやWeb制作を学び、IT企業への就職を目指していたら、一時は就活生として有名...

バックナンバー

連載:【デブサミ秋2015】セッションレポート
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5