SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

デブサミ2011セッションレポート(AD)

デブサミ2011レポート
Webアーキテクチャの歴史と未来

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

 マスコミ的役割から、ブログを経てソーシャル、リアルタイムへと、めざましく変化してきたWebのトレンド。その変遷と技術的トレンドについて考察を行ないながら、Palm OS 用ウェブブラウザやメッセージキュー「Q4M」などで知られる奥一穂 氏が、”個人的経験”を基に、現在の課題と将来の方向性について語った。

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

 マスコミ的役割から、ブログを経てソーシャル、リアルタイムへと、めざましく変化してきたWebのトレンド。その変遷と技術的トレンドについて考察を行いながら、Palm OS用ウェブブラウザやメッセージキュー「Q4M」などで知られる奥 一穂 氏が、「個人的経験」をもとに、現在の課題と将来の方向性について語った。

 冒頭、奥氏は1997年に公開されたPalm OS用Webブラウザ「Palmscape」の開発を振り返り、有線より遅かったモバイル環境下での開発における工夫を紹介。その苦労のわずか15年後には環境が急速に進化し、およそ1,000倍の速度を手に入れることとなる。しかし一方で構成技術はほぼ変わらず、現在もHTTP/1.1全盛、HTMLも進化しながら継続して使われている。

 その理由について、奥氏はHTTPとHTMLの中立性を上げる。旧来のプロトコルは、例えばPOP3はメール送信、FTPはファイル転送というように、アプリケーションと密接につながっている。しかし、HTTPは何を転送するかにこだわらず、HTMLは記述するものが何を規定しない。そのため、通信プロトコルやマークアップ言語の変化を待たずにアプリケーションが進化できたというわけだ。

 そして奥氏は、HTTPがテキスト+バイナリ混在プロトコルであり、可読性・互換性と効率性を兼ね備えていること、そしてHTMLも、古いタグは非推奨になり、Dynamic HTMLやCSSが追加され、HTML5が登場するなど、「継続した進化」がなされていることを挙げ、「Webの時代は続く」と断言した。

株式会社ディー・エヌ・エー システム統括本部 IT基盤部 奥 一穂 氏
株式会社ディー・エヌ・エー システム統括本部 IT基盤部 奥 一穂 氏

Web技術の変遷とこれからの技術

 それでは、これからのWeb技術はどうなっていくのか。奥氏は、これまでのウェブ技術のトレンドを4期に分け、それぞれの技術について解説した。

 まず第1期のYahoo!などのマスコミ期は、多数の読者に同一の情報を配信する機能が求められ、httpdや一部差替がコア技術となり、httpdの同時接続数・バンド幅が技術指標となった。その性質はファイルアーカイブの運用に近いと言え、スケールアップの仕方などは今でもファイルアーカイブの運用から学べることがあるという。

 そして、2期めとなる画像共有サイトも含めたブログ期は、ユーザーがWeb経由で入力した情報を不特定多数に発信する機能が求められた。コア技術は、入力された情報を管理するためのオープンソース RDBMS、over HTTPな分散ファイルシステム等に移行し、RDBとキャッシュのデータ一貫性維持に悩む人もいた。

 Mixiなどに代表されるソーシャル期には、より頻繁になったユーザーの入力を、フォロワーのみへ通知する必要がでてきたため、シャーディングされた大規模環境では複数台のデータベースへの並行書込が求められるようになった。その際、耐障害性とレイテンシの2点が問題となり、同期的なACIDにかわり非同期的なBASEが注目されることとなった。BASEに基づいたサービスを構築する手法の1つはRDB、メッセージキューとワーカーを組み合わせる方法で、柔軟で複雑な処理が可能な反面、プログラミングが必要になる。もう1つは、非同期書込機能つき分散ストレージを使用する方法で、処理の定義が簡単である一方でチューニング困難、複雑な処理ができない。そのほか、最適化手法として専用サーバによる高速化や読み込み時にフォロワーリストで絞り込むPull型の方法などが挙げられた。

 最後に、Twitterなどのリアルタイム期では、準リアルタイムコミュニケーションが必要となる。実現には複数のプログラミングモデルが存在し、アプリロジック的には非同期書込の一種としてストレージ以外に他のクライアントへも書き込むことになり、実装の選択肢として「メッセージキュー+ワーカーモデル」や「httpdへの通知プッシュ機能つき分散ストレージ」の2つがある。また、Long pollingの使用範囲が限定できるなら、独自サーバで行うのも良い選択だという。

 以上を振り返りながら、奥氏は、「書き込み処理の増加は一貫したトレンド」「非同期処理は今後より重要になる」とし、「古いトレンド技術の変化を振り返り、そこから学ぶことが重要」「その上でともに新しい技術の未来を切り拓いていこう」と呼びかけ、セッションが終了した。

図1:MixiやDeNAが採用しているRDB+メッセージキュー+ワーカー
図1:MixiやDeNAが採用しているRDB+メッセージキュー+ワーカー
図2:Cassandraが採用している非同期書込機能つき分散ストレージを使用
図2:Cassandraが採用している非同期書込機能つき分散ストレージを使用
図3:httpdへの通知プッシュ機能つき分散ストレージ
図3:httpdへの通知プッシュ機能つき分散ストレージ
お問い合わせ

株式会社ディー・エヌ・エー

東京都渋谷区代々木4-30-3 新宿MIDWESTビル

http://dena.jp/

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
デブサミ2011セッションレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5800 2011/03/10 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング